스프링 심화 팀프로젝트 정리본

조성현·2023년 1월 6일
0

팀프로젝트 S.A링크

  • ERD / API설계 등

팀 프로젝트 최종
깃허브 링크
(디벨롭 브랜치)

시연영상 유튜브 링크


PostMan Test 사진 정리

#1 Member


#2 Board

2-7 전체 게시글 조회

  • 전체 게시글&댓글&각각의 좋아요를 로딩하도록 구현(명세대로)
  • 해당 프로젝트 명세의 효율성에 의구심을 가지고 추가적인 기능을 구현하였음
  • 게시물 / 댓글을 각각 페이징적용하여 조회할 수 있는 기능 구현(아래에 나옴)

2-8 (페이징) 게시글 조회

  • pagination/{pageChoice} -> @PathVariable 방식으로 원하는 페이지 조회
  • 해당 페이지에 게시글이 하나도 없을 시 404 리턴

2-9 게시글 삭제 관련

  • 양방향 연관관계는 게시글&댓글에만 걸려있음 (cascade 적용)
  • 게시글 삭제 시, 게시글 좋아요&댓글 좋아요도 함께 삭제되도록 코드 구현
//게시물 삭제
@Transactional
public void deleteBoard(Long boardId, Member member) {
    Board board = boardRepository.findById(boardId).orElseThrow(() -> new CustomException(ExceptionStatus.BOARD_IS_NOT_EXIST));
    board.checkUser(board, member);
    List<Comment> commentList =commentRepository.findAllByBoard(board);
    for(Comment comment : commentList) {
        commentRecommendationRepository.deleteAllByCommentId(comment.getId());
        }
    boardRecommendationRepository.deleteByBoard(board);
    boardRepository.deleteById(boardId);
}

#3 COMMENT

3-6 (페이징) 댓글 조회

  • pagination/{pageChoice} -> @PathVariable 방식으로 원하는 페이지 조회
  • 해당 페이지에 게시글이 하나도 없을 시 404 리턴

#4 ADMIN

profile
맛있는 음식과 여행을 좋아하는 당당한 뚱땡이

0개의 댓글