사용자 도구

사이트 도구


java:hibernate:soft_delete

차이

문서의 선택한 두 판 사이의 차이를 보여줍니다.

차이 보기로 링크

java:hibernate:soft_delete [2017/11/30 22:21] (현재)
kwon37xi 만듦
줄 1: 줄 1:
 +====== Hibernate/JPA Soft Delete ======
 +  * 실제 삭제는 하지 않고 삭제 됐다고 해당 row 에 표시만 하는 방식.
 +  * 삭제를 표시하는 컬럼을 두고, 
 +    * ''@SQLDelete'' 로 삭제대신 컬럼 update,
 +    * ''@Where''로 Entity 읽을 때 삭제된 것 제외하도록 처리하고,
 +    * ''@PreRemove'' 에서 entityManager.remove() 호출이후 해당 엔티티의 삭제 표시 필드를 삭제 상태로 만들어준다.(''@SQLDelete''로 삭제시에는 ''remove()'' 호출 작후의 엔티티는 삭제 안 된 상태값으로 남아있기 때문)
 +
 +===== 참조 =====
 +  * [[https://www.youtube.com/watch?v=2Ttsh8JUH5g|How to implement a soft delete with Hibernate - YouTube]]
  
java/hibernate/soft_delete.txt · 마지막으로 수정됨: 2017/11/30 22:21 저자 kwon37xi