영속성 컨텍스트

영속성 컨텍스트란?
@Entity 지정된 객체(Entity)들을 영구적으로 저장하는 공간.
- EntityManager를 통해 영속성 컨텍스트에 접근 가능하다.
- Commit()이 되면 바로 DB로 가지않고 임시적으로 머물게 된다.
- 즉 flush() 전까지는 DB로 저장이 되지 않고 영속성 컨텍스트에 머물게 된다.
EntityManager 메소드
- persist(저장할 객체) : DB에 저장
- find(키 값): 키 값으로 데이터 객체로 불러옴
- createQuery(쿼리): Java스럽게 짠 쿼리(JPQL)를 SQL로 변환
💡JPQL(Java Persistence Query Language)
”JPA에서 엔티티 객체를 조회하기 위해 사용하는 쿼리 언어”
- clear():영속성 컨텍스트를 비운다.
- flush():영속성 컨텍스트 - DB동기화(DB로 데이터 내려보냄)
- close():영속성 컨텍스트 사용 종료