blues_log
Published 2023. 7. 11. 22:17
2023-07-11 TIL (연관 관계) TIL&WIL

오늘의 문제점은 

댓글을 달려있을 때 그와 연관된 댓글들은 어떻게 처리할 것인지에 대해서 해결하는데 조금 오래 걸렸다.

 

해결책은 cascade 옵션을 설정해서 연관된 데이터를 처리할지 정해야한다.

cascade = CascadeType.REMOVE

위의 코드를 Blog entity에 설정해주면 해당 게시글을 지울 때 연관된 댓글들을 DB에서 모두 지우게 만드는 것이다.

적용한 것은 다음과 같다.

@OneToMany(mappedBy = "blog", fetch = FetchType.LAZY, cascade = CascadeType.REMOVE)
private List<Comment> comments;

 

위와 같이 적용하면 해당 게시글이 삭제되면 이와 연관된 댓글들이 모두 지워진다.


혼자 구현을 하다보면 만났던 오류들도 또 만나고 해결하면 또 만나고.. 이런 상황이 반복인 것 같다. 그래도 예전과는 다르게 에러가 발생하면 해결하기 위해서 메세지도 열심히 읽어보고 구글링도 열심히 해보는 것 같다. 이런 자세를 더 키울 수 있도록 노력하자.