삭제는 아쥬 간단하다!
1) 게시글 들어가면 삭제 버튼이 뜸
2) 삭제하시겠습니까? 확인하면
3) 게시글이 삭제되고
4) /board/list로 돌아감
Controller
@GetMapping("/remove")
public String remove(HttpSession session, Integer no,HttpServletRequest request,RedirectAttributes rattr,
Integer page, Integer pageSize) {
if(loginCheck(request)) {
return "login";
}
try {
// no 제대로 들어왔는지 확인
if(no == 0) {
throw new Exception("can't search no");
}
//세션에서 id 가져오기
String id = (String) session.getAttribute("id");
int check = service.remove(id, no);
// 삭제 안 되면 오류 발생
if(check == 0) {
throw new Exception("can't remove this");
}
rattr.addFlashAttribute("msg","DELETE OK");
} catch (Exception e) {
e.printStackTrace();
System.out.println("e = " + e);
rattr.addFlashAttribute("msg", "DEL_ERR");
return "redirect:/board/list?page="+page+"&pageSize="+pageSize;
}
return "redirect:/board/list";
}
저번과 마찬가지로
RedirectAttributes를 사용해서 삭제 완료를 띄웠다!
세션에서 id를 가져오고 no을 가져왔는데
id와 no이 틀리면 어차피 remove가 안된다
그리고 삭제가 실패할 경우,
첫 페이지로 돌아가면 너무 불쌍하니까(ㅠㅠ)
원래 있던 페이지로 되돌려준다!
board.jsp
<form id = "form" action="" method="POST">
<input type="text" value="${boardDto.no}" name = "no" hidden>
<input type="text" value="${p.page}" name = "page" hidden>
<input type="text" value="${p.pageSize}" name = "pageSize" hidden>
<c:if test="${mode ne 'new'}">
<button type="button" id = "removeBtn">삭제</button> <br>
<button type="button" id = "writeNewBtn" onclick="location.href='/board/write'">글쓰기</button>
</c:if>
</form>
<script>
$('#removeBtn').click(function () {
if(!confirm("정말 삭제하시겠습니까?")) return;
$("#form").attr("method", "GET");
$("#form").attr("action", "/board/remove");
$("#form").submit();
})
</script>
page랑 pageSize 값을 주기 위해 hidden input 값을 주었고
글쓰기 모드가 아닐 때만 삭제 버튼이 보이게 만들었다
삭제는 confirm 으로 확인 취소를 받은 뒤
확인일 경우에만 submit이 되도록 한다!
boardList.jsp
<script>
let msg = "${msg}";
if(msg == "WRITE OK") alert("등록 완료");
if(msg == "DELETE OK") alert("삭제 완료");
if(msg=="DEL_ERR") alert("삭제 실패");
</script>
alert도 잊지 않는다 !_!
그러면 결과!
내일은 수정을 해보아야겠다!!
728x90
'혼자서 개발새발' 카테고리의 다른 글
Spring) 댓글 기능 구현 - DB Table, DTO, DAO, Service, Mapper 만들기 (0) | 2022.11.23 |
---|---|
Spring) 게시판 글 수정을 만들어보자! (0) | 2022.11.23 |
Spring) 게시판 쓰기를 만들어보자! (0) | 2022.11.22 |
Spring) 게시판 페이지와 읽기 기능을 만들어보자! (0) | 2022.11.22 |
Spring) 게시판 만들기 첫 단추 - DB Table, DTO, DAO, Mapper 만들기 (0) | 2022.11.18 |