write.jsp 복사해서 modify.jps 만듬
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>게시물 수정</title>
</head>
<body>
<form method="post">
<label>제목</label>
<input type="text" name="title" /><br />
<label>작성자</label>
<input type="text" name="writer" /><br />
<label>내용</label>
<textarea cols="50" rows="5" name="content"></textarea><br />
<button type="submit">완료</button>
</form>
</body>
</html>
BoardController 에서 getMapping
// 게시물 수정 조회
@GetMapping("/modify")
public void getModify(@RequestParam("bno") int bno, Model model) throws Exception{
BoardVO vo = boardService.view(bno);
model.addAttribute("view", vo);
}
view.jsp 페이지에
수정하기 버튼 추가
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>게시물 조회</title>
</head>
<body>
<h2>${view.title}</h2>
<hr />
<div class="writer">
<span>작성자 : </span>${view.writer}
</div>
<hr />
<div class="content">${view.content}</div>
<hr />
<div>
<a href="/board/modify?bno=${view.bno}">게시물 수정</a>
</div>
</body>
</html>
수정 페이지에
수정 전 내용들을 먼저 보여줄거임
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>게시물 수정</title>
</head>
<body>
<form method="post">
<label>제목</label>
<input type="text" name="title" value="${view.title}"/><br />
<label>작성자</label>
<input type="text" name="writer" value="${view.writer}"/><br />
<label>내용</label>
<textarea cols="50" rows="5" name="content"> ${view.content}</textarea><br />
<button type="submit">완료</button>
</form>
</body>
</html>
테스트하기
boardMapper.xml 에 수정 쿼리문 추가함
<!-- 게시글 수정 -->
<update id="modify" parameterType="com.board.domain.BoardVO">
UPDATE tbl_board
SET
title = #{title},
content = #{content},
writer = #{writer}
WEHRE bno = #{bno}
</update>
BoardDAO
package com.board.dao;
import java.util.List;
import com.board.domain.BoardVO;
public interface BoardDAO {
// 게시글 목록
//에러 발생 시 호출한 곳에서 에러를 해결하기 위해 Exception
public List<BoardVO> list() throws Exception;
//게시글 작성
public void write(BoardVO vo) throws Exception;
//게시글 조회
public BoardVO view(int bno) throws Exception;
//게시글 수정
public void modify(BoardVO vo) throws Exception;
}
BoardDAOImple
//게시글 수정
@Override
public void modify(BoardVO vo) throws Exception {
sqlTemplate.update("board.modify",vo);
}
BoardService
//게시글 수정
public void modify(BoardVO vo) throws Exception;
BoardServiceImple
//게시글 수정
@Override
public void modify(BoardVO vo) throws Exception {
boardDAO.modify(vo);
}
BoardController -postMapping추가
// 게시물 수정
@PostMapping("/modify")//주소랑 다른 페이지일 경우에는 String
public String postModify(BoardVO vo) throws Exception{
boardService.modify(vo);
return "redirect:/board/view?bno=" +vo.getBno();
}
테스트하기
'BACKEND > Spring' 카테고리의 다른 글
게시판 만들기 - 삭제하기 기능 추가 (0) | 2023.10.24 |
---|---|
게시판 만들기 - 메뉴 모듈화 include,날짜 format (0) | 2023.10.23 |
게시판 만들기 - view.jsp(게시글 조회) 및 DAO, Service, Controller (1) | 2023.10.23 |
게시판 만들기 - write.jsp(게시물 작성) , mapper (0) | 2023.10.23 |
게시판 만들기 - mapper만들어서, DAO와 Service,Controller연결 (0) | 2023.10.23 |