view.jsp
<form method="post" action="/reply/write">
<p>
<label>댓글 작성자</label> <input type="text" name="writer">
</p>
<p>
<textarea rows="5" cols="50" name="content"></textarea>
</p>
<p>
<button type="submit">댓글 작성</button>
</p>
</form>
</div>
submit으로 해야 POST로 이동
ReplyController
// 댓글 작성
@PostMapping("/write")
public String posttWrite(ReplyVO vo) throws Exception {
replyService.write(vo);
return "redirect:/board/view?bno=" + vo.getBno();
}
ReplyController를 만들었을때, 컨트롤러 자체를 /reply로 매핑했으므로, 이 댓글 작성 메서드에 적용되는 실제 url은 /reply/write 입니다.
return은 redirect:/board/view?bno= 로 되어있어서, 댓글을 작성했던 게시물로 다시 이동됩니다.
즉, 데이터의 순서는
1. 게시물 조회 페이지에서 댓글 작성 후 등록
2. /reply/write 에 해당되는 컨트롤러로 데이터 전달
3. service → dao → mapper를 통해 db에 데이터 등록
4. redirect:/board/view?bno=로 인해 1번에서 조회중이었던 게시물로 이동
이렇게 됩니다.
view.jsp lib추가
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
<div>
<form method="post" action="/reply/write">
<p>
<label>댓글 작성자</label> <input type="text" name="writer">
</p>
<p>
<textarea rows="5" cols="50" name="content"></textarea>
</p>
<p>
<input type="hidden" name="bno" value="${view.bno}">
<button type="submit">댓글 작성</button>
</p>
</form>
</div>
'BACKEND > Spring' 카테고리의 다른 글
게시판 만들기 - 댓글 삭제하기 (0) | 2023.10.25 |
---|---|
게시판 만들기 - 댓글 수정하기 (0) | 2023.10.25 |
게시판 만들기 - 댓글 DB에 테이블 추가, 게시글 댓글 조회 (0) | 2023.10.25 |
게시판 만들기 - 검색 기능 (0) | 2023.10.24 |
게시판 만들기 - 페이징 기능 구현2 (0) | 2023.10.24 |