게시글 수정 기능

  1. board/detail.html에서 수정 버튼과 버튼의 동작을 추가해야 합니다. 수정 버튼 클릭 시 /board/{id}/updateForm URI로 요청을 보냅니다.
  2. BoardController.java에서 해당 URI에 대한 응답을 매핑해줍니다.
  3. 수정하기 위한 view는 board/updateForm.html에서 생성합니다.
  4. 해당 view에서는 수정 완료 버튼 클릭 시 수행할 통신에 대한 자바스크립트 코드를 추가합니다.
  5. 요청에 대한 응답은 BoardApiController.java에서 매핑해줍니다.
  6. 마지막으로 게시글 수정에 대한 비즈니스 로직을 추가해줍니다.

아래에서 해당 순서를 바탕으로 코드의 추가를 진행하겠습니다.


board/detail.html

게시글 상세보기 - 수정 버튼의 동작을 추가해줍니다.

<button th:onclick="|location.href = '@{/board/{id}/updateForm(id=${board.id})}'|">
	수정
</button>

게시글의 아이디를 URI에 포함하여 updateForm으로 요청을 보냅니다.

다음으로 해당 버튼 클릭으로 사용자가 요청한 정보의 응답을 진행하는 메서드를 추가합니다.


BoardController.java

앞서 추가한 수정버튼 URI에 대한 응답을 매핑해줍니다.

@GetMapping("/board/{id}/updateForm")
public String updateForm(@PathVariable int id, Model model){
    model.addAttribute("board", boardService.findBoardById(id));
    return "board/updateForm";
}

URI의 게시글 id 값을 @PathVariable 어노터이션을 사용하여 id변수에 저장합니다.