백엔드개발자/SPRING, JPA 등...
JPA 기본 메서드 정리
보혀니
2022. 2. 23. 23:55
flush()
Persistence Context의 변경 내용을 데이터베이스에 반영
일반적으로는 직접 사용하지는 않고, 자바 애플리케이션에서 커밋 명령이 들어왔을 때 자동으로 실행
detach()
특정 Entity를 준영속 상태(영속 컨텍스트의 관리를 받지않음)로 바꾼다
clear()
Persistence Context를 초기화
close()
Persistence Context를 종료
merge()
준영속 상태의 Entity 특징
파라미터로 넘어온 Entity의 식별자 값으로 영속성 컨텍스트를 조회하고, 찾는 Entity가 없으면 데이터 베이스에서 조회한다. 만약 데이터베이스에도 없다면 새로운 Entity를 생성해 병합한다. 따라서 save or update 기능을 수행한다고 볼 수 있음
find()
식별자 값을 통해 Entity를 찾는다
persist()
생성된 Entity를 Persistence Context와 DB에 저장함
remove()
식별자 값을 통해 Entity를 삭제