Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[로니] 스프링 카페 6단계 - 댓글 #147

Open
wants to merge 12 commits into
base: cmsskkk
Choose a base branch
from

Conversation

CMSSKKK
Copy link

@CMSSKKK CMSSKKK commented Mar 26, 2022

안녕하세요! 로니입니다.

기능 구현사항

  • 게시글을 볼 때, 댓글까지 함께 표시
  • 로그인한 유저는 댓글 작성 가능
  • 자신의 작성한 댓글만 삭제 가능
  • 다른 유저의 댓글이 포함되어있는 게시글은 삭제 불가능하도록 구현
  • 댓글 수정기능

궁금한 점

  • Exception을 현재 ClientException으로 하나만 구현해서, 사용자가 잘못된 요청을 했을 시에 상태코드와 메시지를 그때그때 담아서 처리하고 있습니다. 조금 더 세분화가 필요할까요? 그리고 상태코드와 메시지를 enum으로 담아서 재사용하는 것이 좋을까요??

  • 로그인 여부에 따라서 기능 사용을 Interceptor를 구현해서, 처리하고 있는데 각각의 url을 interceptorTest를 통해서 하나로 모아서 테스트하는 것이 더 좋을까요? 아니면 각각의 controllerTest에서 로그인정보 여부를 체크해서 성공, 실패 테스트를 각각 만드는 것이 더 좋을까요?

CMSSKKK added 11 commits March 24, 2022 22:20
SessionUser, ArticleUpdateDto 구현
equals 메서드 수정
Article 생성자 팩토리 메서드로 수정
댓글 기능 구현을 위한 domain 구현
schema.sql에 cafe_reply table 생성 ddl 작성
HttpSesion에 담긴 user 정보를 담는 모델 구현
기존 UserResponseDto로 담았던 로직을 수정
Reply를 DB에 저장하는 로직을 구현
ArticleController에 ReplyService 필드 추가
qna/show.html에 reply 정보를 출력하도록 수정
ReplyRepository.hasReplyOfAnotherWriter() 메서드 구현
ReplyService.isDelatableArticle() 메서드 구현
ArticleController.checkDeletable() 메서드 구현
SessionUser 수정하지 못하고 빼먹은 부분 수정
MvcConfig addInterceptors 댓글 작성 ,삭제 url pathPattern 추가
data.sql reply의 foreign key로 인해서 테스트를 위한 article insert query 2개 작성
reply 수정 로직을 구현했으나, 실제로 화면에 보이기위해서는 softDeletion이나 다른 필드가 필요할 것 같아서 연결하지는 못하였음
DB 쿼리도 변경이 필요할 것 같아서, 다음단계에서 구현을 목표로 함.
@CMSSKKK CMSSKKK added the review-BE Improvements or additions to documentation label Mar 26, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
review-BE Improvements or additions to documentation
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant