spring/프로젝트
17. 페이징 이벤트 처리 ( 수정 / 삭제 )
yaha
2024. 1. 27. 23:27
수정 후 목록 페이지로 이동하게 하려함.
크게 어려운건 없으니 빠르게 진행.
수정을 한다는 가정하에 똑같이 pageNum와 amount가 필요함 이걸 작업해 줄거임.
modify.jsp에 수정을 좀 해줘야함

<input type="hidden" name="pageNum" value="${cri.pageNum }">
<input type="hidden" name="pageNum" value="${cri.amount }">
눈에 보이지 않는 태그를 만들어줌.
수정이나 삭제는 POST방식으로 처리함.
수정을 한다하면 PostMapping으로 걸리고, 수정을 하게 되면 pageNum랑 amount값도 전달이 되어야함.
그리고 그걸 받으려면 Criteria로 받아야함.

@PostMapping("/modify")
public String modify(BoardVO board, @ModelAttribute("cri") Criteria cri, RedirectAttributes rttr) {
int count = service.modify(board);
if(count == 1) {
rttr.addFlashAttribute("result", "success");
}
rttr.addAttribute("pageNum",cri.getPageNum());
rttr.addAttribute("amount",cri.getAmount());
return "redirect:/board/list";
}
그리고 결과를 한번 확인

modify를 하고 8페이지에 고정이 되는지 확인.

.
삭제도 똑같은 방법으로 진행.
@PostMapping("/remove")
public String remove(@RequestParam("bno") Long bno, @ModelAttribute("cri") Criteria cri, RedirectAttributes rttr) {
int count = service.remove(bno);
if(count == 1) {
rttr.addFlashAttribute("result", "success");
}
rttr.addAttribute("pageNum",cri.getPageNum());
rttr.addAttribute("amount",cri.getAmount());
return "redirect:/board/list";
}

삭제도 확인.
이제 게시판의 진짜 데이터를 뿌려줘야함.
그럼 검색을 제외한 게시판의 기능이 대강 끝나게 됨.
먼저 BoardMapper 인터페이스에 추가해줘야함.
public int getTotalCount(Criteria cri);
그리고 BoardMapper.xml에도 추가 작업.
일단 count 값으로 bno 갯수만 처리해줘도 일단은 충분함.
<select id="getTotalCount" resultType="int">
select count(bno) from tbl_board
</select>
그리고 BoardService와 BoardServiceImpl도 메서드 구현 시작.
int getTotal(Criteria cri);
@Override
public int getTotal(Criteria cri) {
// TODO Auto-generated method stub
return mapper.getTotalCount(cri);
}
그리고 123개로 정해둔걸 total 개수로 바꿔주면됨.
BoardController에서 list 수정
@GetMapping("/list")
public void list(Criteria cri, Model model) {
log.info("list" + cri);
// model.addAttribute("pageMaker", new PageDTO(cri, 123));
model.addAttribute("list", service.getList(cri));
model.addAttribute("pageMaker", new PageDTO(cri, service.getTotal(cri)));
}
톰캣 실행 후 확인 실시.

데이터가 잘 들어간게 확인.
이렇게 검색기능을 제외한 게시판이 끝이남.
----------------------------------------------------------------------------------------
글이 두서 없는데 나중에 수정하겠읍니다.