Spring52 엔티티의 생명주기 엔티티는 영속성 컨텍스트에 의해 각 생명주기별로 관리된다 생명주기는 다음과 같이 존재한다 비영속 엔티티만 생성되고 영속성 컨텍스트에 저장되지 않은 상태 영속 엔티티 생성 및 영속성 컨텍스트에 저장된 상태 준영속 영속성 컨텍스트에서 엔티티를 지운 상태 엔티티를 생성하고 난 후, 영속성 컨텍스트에 동일한 엔티티가 존재하나 해당 엔티티가 영속성 컨텍스트와 관련없는 상태 삭제 DB에서 엔티티가 삭제된 상태 2023. 2. 12. 영속성 컨텍스트 JPA에서는 엔터티에 대한 캐싱과 객체에 대한 유일성을 보장하기 위해 "영속성 컨텍스트"라는 개념을 제공한다 영속성 컨텍스트란, "엔티티를 영구 저장하는 환경"이다. DB에 데이터를 저장하기 전에 사용되는 가상의 DB 같은 개념이다. JPA에서는 App과 DB사이에 영속성 컨텍스트라는 중간 레이어를 두어 DB 접근 시 여러 이점을 제공하고 있다. 이점은 다음과 같다 성능향상 1차 캐시, 쓰기 지연, 지연 로딩을 통해 성능 최적화 동일한 쿼리에 대해 동일한 결과 보장 동일한 쿼리를 요청한 적이 있는 경우, 쿼리를 DB에 요청하지 않고 1차 캐시에 저장된 결과 반환 엔티티 객체에 대한 유일성 보장 동일한 트랜잭션에 대해 동일한 객체를 반환 엔티티의 해시코드로 같은 쿼리결과에 대한 엔티티인지 비교가능 변경 감.. 2023. 2. 12. @CreatedDate, @LastModifiedDate @CreatedDate, @LastModifiedDate를 사용하기 위해서는 Spring Boot를 실행시키는 클래스(~~~Application)상단에 @EnableJpaAuditing를 적어줘야 한다 @SpringBootApplication @EnableJpaAuditing public class ZamongcampusServerApplication { public static void main(String[] args) { new SpringApplicationBuilder(ZamongcampusServerApplication.class) .properties(APPLICATION_LOCATIONS) .run(args); } } 그리고 @MappedSuperclass와 @EntityListeners를.. 2022. 11. 5. Spring Boot Profile 설정 Edit Configurations -> Build and run -> VM Option란에 -Dspring.profiles.active=local # application.yml spring: profiles: active: dev 2022. 10. 12. 이전 1 ··· 6 7 8 9 10 11 12 13 다음