on
[게시판] 7. 게시판 글 수정 및 삭제
[게시판] 7. 게시판 글 수정 및 삭제
본 게시물은 아래 링크를 정리한 내용입니다.
1. boardMapper.xml에 코드 추가
UPDATE MP_BOARD SET TITLE = #{title}, CONTENT = #{content} WHERE BNO = #{bno} DELETE FROM MP_BOARD WHERE BNO = #{bno}
2. BoardDAO.java에 코드 추가
// 게시물 수정 public void update(BoardVO boardVO) throws Exception; // 게시물 삭제 public void delete(int bno) throws Exception;
3. BoardDAOImpl.java에 코드 추가
// 게시물 수정 @Override public void update(BoardVO boardVO) throws Exception { sqlSession.update("boardMapper.update", boardVO); } // 게시물 삭제 @Override public void delete(int bno) throws Exception { sqlSession.delete("boardMapper.delete", bno); }
4. BoardService.java에 코드 추가
// 게시물 수정 public void update(BoardVO boardVO) throws Exception; // 게시물 삭제 public void delete(int bno) throws Exception;
5. BoardServiceImpl.java에 코드 추가
@Override public void update(BoardVO boardVO) throws Exception { dao.update(boardVO); } @Override public void delete(int bno) throws Exception { dao.delete(bno); }
6. BoardController.java에 코드 추가
// 게시판 수정뷰 @RequestMapping(value = "/updateView", method = RequestMethod.GET) public String updateView(BoardVO boardVO, Model model) throws Exception{ logger.info("updateView"); model.addAttribute("update", service.read(boardVO.getBno())); return "board/updateView"; } // 게시판 수정 @RequestMapping(value = "/update", method = RequestMethod.POST) public String update(BoardVO boardVO) throws Exception{ logger.info("update"); service.update(boardVO); return "redirect:/board/list"; } // 게시판 삭제 @RequestMapping(value = "/delete", method = RequestMethod.POST) public String delete(BoardVO boardVO) throws Exception{ logger.info("delete"); service.delete(boardVO.getBno()); return "redirect:/board/list"; }
7. readeView.jsp 에 코드 추가
1) 수정, 삭제 취소 버튼은 jquery로 제어할 것이기 때문에 head 안에 jqueryCDN을 추가한다.
2) 아래 코드 추가
$(document).ready(function(){ var formObj = $("form[name='readForm']"); // 수정 $(".update_btn").on("click", function(){ formObj.attr("action", "/board/updateView"); formObj.attr("method", "get"); formObj.submit(); }) // 삭제 $(".delete_btn").on("click", function(){ formObj.attr("action", "/board/delete"); formObj.attr("method", "post"); formObj.submit(); }) // 취소 $(".list_btn").on("click", function(){ location.href = "/board/list"; }) })
3) table 태그 밖에 코드 추가
수정 삭제 목록
4) 변경
8. src/main/webapp/WEB-INF/views/board에 updateView.jsp 만들고 아래 코드 추가
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> <%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%> 게시판 $(document).ready(function(){ $(".cancel_btn").on("click", function(){ event.preventDefault(); location.href = "/board/list"; }) }) 게시판 홈 - 글 작성 제목 내용 작성자 작성날짜 저장 취소
9. 확인하기
1) 서버 실행 및 localhost:8080/board/list 접속
2) 수정버튼 클릭 후 데이터 수정
3) 아래와 같이 내용이 수정되어 있으면 끝.
from http://wldwlddl59.tistory.com/52 by ccl(A) rewrite - 2021-12-14 19:27:56