User Entity 상태 업데이트 시, User Entity에 ManyToOne(One이 User)으로 매핑되어 있는 객체들을 처리하는 규칙이 정해져 있지 않아 발생하는 에러이다.
이런 경우 User 객체를 삭제하기 전에 먼저 관련 객체들을 모두 삭제해야 한다.
@Override
public void withdrawalUser(User user) {
try {
userLectureRepository.deleteAllByUser(user); |
userNotificationRepository.deleteAllByUser(user); > 추가
tokenRepository.deleteAllByUser(user); |
userRepository.deleteById(user.getId());
} catch (Exception e){
throw new BaseException(Code.WITHDRAWAL_FAILED);
}
}