상세 컨텐츠

본문 제목

53) 댓글과 댓글 수 에 대한 처리

Today's Study/Academy

by Hello-Melo 2022. 6. 29. 16:37

본문

22.6.29

 - 각 게시글마다 댓글의 수를 검색해서 게시글에 표현하도록 함

 - 먼저 board_tbl에 댓글의 수를 의미하는 replyCnt 컬럼 추가

alter table board_tbl add column replyCnt int null default 0;

만약 기존 테이블에 댓글이 존재 햇다면 이를 반영해야 하기에 다음 코드 추가

update board_tbl
set replyCnt = (select count(rno) from reply_tbl where board_tbl.bno = reply_tbl.bno);

SQL을 수정했다면, Board 클래스와 BoardMapper의 수정이 필요

Board 클래스에 replyCnt 추가!

BoardMapper 인터페이스에 updateReplyCnt 메서드 추가

추가된 updateReplyCnt 메서드의 amount 변수는 댓글이 증가하면 해당 게시물 번호를 +1, 감소하게되면 -1을 해주기 위한 변수. 2개 이상의 변수 데이터를 처리할 때는 반드시 @Param을 추가해줘야만 인식함

 

BoardMapper.xml에 updateReplyCnt 추가!

 

Mapper 부분을 처리했으니 이제 Service 단에 들어가 처리

ReplyServiceImpl 의 트랜잭션 처리

원래는 ReplyMapper만 의존했으나, BoardMapper 도 같이 의존

더불어 상수로 Reply_ADD 와 Reply_DEL을 미리 설정해줌. @Autowired 혹은 @Sette 주입으로 설정

ReplyServiceImple에서 삭제와 등록은 2가지를 한번에 처리 하기 때문에 @Transactional 어노테이션이 필요

 

등록
삭제

list.jsp 페이지에 ReplyCnt를 추가해서 게시글마다 댓글수를 추가!

여기서 반복문의 변수를 b로 줬기에 b.replyCnt를 게시글 제목 옆에 붙여줌!

 

위 사진처럼 게시물의 제목 옆에 댓글 수가 나오는 것을 확인 가능!!!


- 하루 3연 포스팅!!!! 정리되고 좋은 것 같다!

'Today's Study > Academy' 카테고리의 다른 글

55) Spring 파일 업로드 - 2  (0) 2022.07.01
54) Spring 파일 업로드 설정(Java)  (0) 2022.06.30
52) REST 방식 댓글 구현 - 6  (0) 2022.06.29
51) REST 방식 댓글 구현 - 5  (0) 2022.06.29
50) REST 방식 댓글 구현 - 4  (0) 2022.06.29

관련글 더보기

댓글 영역