SoftDelete 조회 팁

Untitled

  1. 매번 모든 쿼리문에 where is_deleted = 0을 붙이는 것이 번거롭다. 혹은 따로 처리하는 코드를 넣는게 지저분했다.
  2. 중요!! 삭제된 데이터를 조회할 일이 없다!!

→ 아묻따 Entity 클래스에 @Where(clause = "is_deleted = 0") 붙이면

Untitled

⇒ 모든 쿼리에 where절이 추가된다

Untitled

단, 어노테이션은 상속되지 않으므로 BaseEntity에는 붙일 수 없다!

[JPA] Soft Delete 적용과 @Where, @SQLDelete

참고로 위 블로그에서는 softdelete 시에 @Where 어노테이션을 지양한다. 삭제된 데이터를 검색하는 로직이 추가되면 유지보수가 어려워지기때문