왜 아까 게시물 상세 페이지에서는64. spring으로 상세 게시물 보기 (velog.io) board_No를 세션에 넣었을까?
<table align="center" border="1">
<tr>
<td>제목</td>
<td>${board.boardTitle }</td>
</tr>
<tr>
<td>작성자</td>
<td>${board.boardWirter }</td>
</tr>
<tr>
<td>작성일</td>
<td>${board.bCreateDate }</td>
</tr>
<tr>
<td>내용</td>
<td>
${board.boardContents }
<br>
<c:if test="${board.boardRename ne null}">
<img alt="본문이미지" src="/resources/buploadFiles/${board.boardRename }">
</c:if>
</td>
</tr>
<tr>
<td colspan="2"><input type="button" value="수정" onclick="location.href='/board/modifyView.kh?boardNo=${board.boardNo}';">
<button type="button" onclick="location.href='/board/list.kh?page=${pageNow }';">목록</button>
<button type="button" onclick="remove()">삭제</button>
</td>
</tr>
</table>
</form>
<script>
function remove() {
event.preventDefault(); // 하이퍼링크 이동방지
if(window.confirm("게시물을 삭제하시겠습니까?")){
location.href='/board/remove.kh';
}
}
</script>
@RequestMapping (value="board/remove.kh", method = RequestMethod.GET)
public String boardReomve(HttpSession session, Model model) {
int pageNow= (int) session.getAttribute("pageNow");
//이건 page로 돌아갈때 이전에 보던 페이지로 넘어갈수있도록 지정해놓은 session 값이다.
try {
int boardNo = (int)session.getAttribute("boardNo");
int result = bService.removeOneByNo(boardNo);
if(result>0) {
session.removeAttribute("boardNo"); //한가지의 세션만 지운다.
}
}catch (Exception e) {
model.addAttribute("mgs",e.getMessage());
return "/common/errorPage";
}
String dierctPage ="redirect:/board/list.kh?page="+pageNow;
session.removeAttribute("pageNow");
return dierctPage;
}
int result = bService.removeOneByNo(boardNo);
를 이용하여 삭제service로 이동한다.
@Override
public int removeOneByNo(int boardNo) {
int result = bStore.deleteOnebyNo(session, boardNo);
return result;
}
@Override
public int deleteOnebyNo(SqlSessionTemplate session, int boardNo) {
int result = session.delete("BoardMapper.deleteBoardOne", boardNo);
return result;
}
<delete id="deleteBoardOne">
delete from board_tbl where board_no =#{boardNo}
</delete>
@RequestMapping (value="board/remove.kh", method = RequestMethod.GET)
public String boardReomve(HttpSession session, Model model) {
int pageNow= (int) session.getAttribute("pageNow");
//이건 page로 돌아갈때 이전에 보던 페이지로 넘어갈수있도록 지정해놓은 session 값이다.
try {
int boardNo = (int)session.getAttribute("boardNo");
int result = bService.removeOneByNo(boardNo);
if(result>0) {
session.removeAttribute("boardNo"); //한가지의 세션만 지운다.
}
}catch (Exception e) {
model.addAttribute("mgs",e.getMessage());
return "/common/errorPage";
}
String dierctPage ="redirect:/board/list.kh?page="+pageNow;
session.removeAttribute("pageNow");
return dierctPage;
}