diff --git a/src/main/java/org/recordy/server/place/domain/PlaceCacheEntity.java b/src/main/java/org/recordy/server/place/domain/PlaceCacheEntity.java new file mode 100644 index 00000000..b8760288 --- /dev/null +++ b/src/main/java/org/recordy/server/place/domain/PlaceCacheEntity.java @@ -0,0 +1,26 @@ +package org.recordy.server.place.domain; + +import lombok.AllArgsConstructor; +import lombok.Getter; +import org.springframework.data.annotation.Id; +import org.springframework.data.redis.core.RedisHash; +import org.springframework.data.redis.core.index.Indexed; + +@AllArgsConstructor +@Getter +@RedisHash("place") +public class PlaceCacheEntity { + + @Id + private Long id; + @Indexed + private String platformId; + + + public static PlaceCacheEntity from(Place place) { + return new PlaceCacheEntity( + place.getId(), + place.getPlatformId() + ); + } +} diff --git a/src/main/java/org/recordy/server/place/domain/PlaceEntity.java b/src/main/java/org/recordy/server/place/domain/PlaceEntity.java index be0c561a..0fe837a5 100644 --- a/src/main/java/org/recordy/server/place/domain/PlaceEntity.java +++ b/src/main/java/org/recordy/server/place/domain/PlaceEntity.java @@ -7,14 +7,12 @@ import lombok.NoArgsConstructor; import org.recordy.server.common.domain.JpaMetaInfoEntity; import org.recordy.server.location.domain.LocationEntity; -import org.springframework.data.redis.core.RedisHash; import java.time.LocalDateTime; @AllArgsConstructor @NoArgsConstructor(access = AccessLevel.PROTECTED) @Getter -@RedisHash("place") @Table(name = "places") @Entity public class PlaceEntity extends JpaMetaInfoEntity { diff --git a/src/main/java/org/recordy/server/place/repository/impl/PlaceRedisRepository.java b/src/main/java/org/recordy/server/place/repository/impl/PlaceRedisRepository.java index 001f05d7..c3bb07b8 100644 --- a/src/main/java/org/recordy/server/place/repository/impl/PlaceRedisRepository.java +++ b/src/main/java/org/recordy/server/place/repository/impl/PlaceRedisRepository.java @@ -1,9 +1,9 @@ package org.recordy.server.place.repository.impl; -import org.recordy.server.place.domain.PlaceEntity; +import org.recordy.server.place.domain.PlaceCacheEntity; import org.springframework.data.repository.CrudRepository; -public interface PlaceRedisRepository extends CrudRepository { +public interface PlaceRedisRepository extends CrudRepository { boolean existsByPlatformId(String platformId); } diff --git a/src/main/java/org/recordy/server/place/repository/impl/PlaceRepositoryImpl.java b/src/main/java/org/recordy/server/place/repository/impl/PlaceRepositoryImpl.java index bd4f8837..88d641df 100644 --- a/src/main/java/org/recordy/server/place/repository/impl/PlaceRepositoryImpl.java +++ b/src/main/java/org/recordy/server/place/repository/impl/PlaceRepositoryImpl.java @@ -5,6 +5,7 @@ import org.recordy.server.common.message.ErrorMessage; import org.recordy.server.place.controller.dto.response.PlaceGetResponse; import org.recordy.server.place.domain.Place; +import org.recordy.server.place.domain.PlaceCacheEntity; import org.recordy.server.place.domain.PlaceEntity; import org.recordy.server.place.exception.PlaceException; import org.recordy.server.place.repository.PlaceRepository; @@ -35,7 +36,7 @@ public Place save(Place place) { @Override public void cache(Place place) { - placeRedisRepository.save(PlaceEntity.create(place)); + placeRedisRepository.save(PlaceCacheEntity.from(place)); } @Override