일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 |
- spring boot
- virtualization
- ORM
- CI/CD
- 데이터베이스
- Container
- 영속성 컨텍스트
- CS
- 스프링 시큐리티
- spring cloud
- Spring
- 스프링
- HTTP
- mysql
- 도커
- computer science
- web server
- Spring Security
- JPA
- 가상화
- 스프링 부트
- 배포
- 스프링 배치
- 컨테이너
- vm
- spring batch
- 웹 서버
- 백엔드
- Java
- 자바
- Today
- Total
목록@SQLDelete (2)
개발 일기

전 게시글에서 특정 엔티티의 데이터를 제거 시에 Hard Delete하는 방법과 Soft Delete하는 방법 이렇게 두가지가 있고 Soft Delete를 하기 위해서 @SQLDelete와 @SQLRestriction을 통해 구현 가능하다는 사실을 알게 됐다.그런데 만약 예를들어서 내가 멤버를 제거한다고 했을 때 그 연관관계에 있는 댓글들 즉, 해당 탈퇴 처리한 멤버의 댓글들은 어떻게 처리할지에 대한 고민이 생기기 시작했다. 그래서 해당 해결 후 이 블로그 글을 작성하게됐다.첫 번째 방법 - @SQLDelete / @SQLRestriction이 방법은 똑같이 Comment에도 위와 같은 어노테이션을 걸어두는 것이다.// Member Entity// ... 기타 anotation 생략@SQLDelete..

왜 사용하게 됐는가깃허브에 다른 사람이 개발한 코드를 보면서 그냥 memberRepository.delete()를 하면되지 왜 굳이 entity에 softDelete()를 따로 만들어서 처리하는지에 대한 의문이 계속 있었는데 사실 처음엔 그냥 넘겼다.그런데 최근 동아리 시간에 같은 동아리원이 CRUD에서 Delete를 다루는 시간에 "저렇게 Hard Delete보다는 Soft Delete로 처리해줘야지"라고 얘기했었다. 그때 내 머리속에 위에서 언급했던 코드가 스쳐지나가면서 이게 뭐길래 쓰지? 왜 굳이 저렇게 처리해주는 것일까? 라는 궁금증이 생겼고 그래서 한번 도입해보게 됐다.Hard Delete와 Soft Delete 어떻게 다를까?Hard Delete(물리 삭제)와 Soft Delete(논리 삭제..