db에서 유저나 게시판 같은 것을 삭제하는 경우가 있습니다. 이럴 때 db에서 그 값을 정말 제거하면 문제가 생길 수 있습니다.
A유저가 B 게시글을 썼다고 가정해 보겠습니다
이제 A유저가 탈퇴를 했다고 가정하겠습니다. 그럼 만약 이 게시글에 접근한다면 해당 유저를 찾을 수 없고 엄청난 오류가 발생하게 됩니다.
이런 경우 유저의 상태를 이용해 관리합니다.
상태 관리
work를 제거하는 작업으로 예를 들어 보겠습니다.
work의 상태를 저장하는 ENUM을 만듭니다.
현재는 NORMAL과 DELETE로 예를 들겠습니다.
데이터베이스에도 상태를 저장하는 컬럼을 만듭니다.
이제 WorkEntity에서 상태를 가져올 수 있게 합니다.
기본적으로 모든 상태는 NORMAL로 둡니다. 그리고 삭제한 work는 DELETE로 바꿔줍니다.
값을 가져올 때는 삭제된 일을 게외한 나머지를 가져와야 합니다.
이러면 실제로 값을 제거하지 않고도 삭제한 효과를 낼 수 있습니다.
'프로젝트' 카테고리의 다른 글
웹 개발 - 프로젝트 2 - 13. 이메일 인증 (0) | 2024.11.01 |
---|---|
웹 개발 - 프로젝트 2 - 11. 프론트 디자인 (2) | 2024.10.19 |
웹 개발 - 프로젝트 2 - 10. 회원가입 (0) | 2024.10.13 |
웹 개발 - 프로젝트 2 - 9. 로그인 폼 (4) | 2024.10.05 |
웹 개발 - 프로젝트 2 - 8. work 보여주기 (2) | 2024.10.04 |