일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- CRUD
- delete
- MVC CRUD
- Controller
- Connection pool
- Oracle
- 게시판
- 서비스계층
- 게시판만들기
- hikaricp
- log4jdbc
- spring
- log4j
- update
- mybatis
- MVC 게시판
- jdbc
- 환경설정
- MVC
- service
- MVC설정
- Oracle 연결
- 게시판 List
- Today
- Total
yahayaha
17. 페이징 이벤트 처리 ( 수정 / 삭제 ) 본문
수정 후 목록 페이지로 이동하게 하려함.
크게 어려운건 없으니 빠르게 진행.
수정을 한다는 가정하에 똑같이 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)));
}
톰캣 실행 후 확인 실시.
데이터가 잘 들어간게 확인.
이렇게 검색기능을 제외한 게시판이 끝이남.
----------------------------------------------------------------------------------------
글이 두서 없는데 나중에 수정하겠읍니다.
'spring > 프로젝트' 카테고리의 다른 글
19. 검색처리 (JSP수정) (0) | 2024.02.04 |
---|---|
18. 검색 처리 (동적 쿼리) (0) | 2024.01.29 |
16. 페이징 이벤트 처리(조회 / 리스트 ) (2) | 2024.01.27 |
15. 페이징 화면 처리 (0) | 2024.01.27 |
14. MyBatis로 Spring페이징 처리하기. (1) | 2024.01.27 |