이영애님 2019. 12. 27. 12:31

@Entity 
@Table

 

  @Id 
  @Column 
  @GeneratedValue(strategy = GenerationType.IDENTITY)

 

  @Enumerated(EnumType.STRING):: enum 이름을 DB에 저장

 

 

**  @OneToOne(fetch = FetchType.LAZY )

 

 


- Hibernate의 Session 객체(관리자 객체)가 도메인 객체를 처리하는 구조.

 

- Session 객체에는 영속성 컨텍스트를 포함한다. 

- 영속성 컨텍스트는 Transaction과 1:1 연결되며, 하나의 트랜잭션이 작업하는 동안 변경사항이 저장된다.

- Transaction 종료시 영속성 컨텍스트의 내용은 저장소에 동기화(flushing)된다. 

 

즉, Session 하나의 트랜잭션 동안 객체의 상태를 보관하는 캐시로 볼 수 있다. 


[페치 전략] :: 데이터베이스에서 데이터를 가져 오는 전략

 

EAGER - 데이터를 즉시 가져오는 전략으로 즉시 로딩이라고 합니다.

LAZY - 데이터가 처음 액세스 될 때 가져오는 전략으로 지연 로딩이라고 합니다.

 

 

 - eager  : 현재도메인 조회시 지정도메인 동시 조회
 - lazy : 지정도메인 사용시 지정도메인 조회



 

LazyInitializationException....

 

https://kingbbode.tistory.com/27