SpringBoot
프레젠테이션(웹)계층 CRUD 구현 -④CRUD 작성, Modify(수정)
Helmi
2023. 5. 12. 10:33

등록과 유사. 변경된 내용 수집해 BoardVO 파라미터로 처리하고, BoardService 호출
수정 작업 시작하는 화면 경우 GET 방식으로 접근하나 실제 작업은 POST 방식으로 동작하므로 @PostMapping 이용해 처리

com.board.controller.BoardController.java 일부
@PostMapping("/modify")
public String modify(BoardVO board, RedirectAttributes rttr) {
log.info("modify:" + board);
if(service.modify(board)) {
rttr.addFlashAttribute("result", "success");
}
return "redirect:/board/list";
}
service.modify()는 수정 여부를 boolean으로 처리하므로 이를 이용해 성공한 경우에만 RedirectAttributes에 추가
com.board.controller.BoardControllerTest.java 일부
@Test
public void testModify() throws Exception{
String resultPage = mockMvc
.perform(MockMvcRequestBuilders.post("/board/modify")
.param("bno", "1")
.param("title", "수정된 테스트 새글 제목")
.param("content", "수정된 테스트 새글 내용")
.param("writer", "user00"))
.andReturn().getModelAndView().getViewName();
log.info(resultPage);
}