IT/Spring

[spring 게시판 만들기 #6] 게시물 수정 Update

jaewon_sss 2020. 9. 14. 15:39
반응형

스프링 게시물 수정하기 




jsp file 생성



이름은 update.jsp



update.jsp 코드

<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css">
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<h2>Update page</h2>
<form name="update" method="POST" action="${path}/board/update?no=${data.no}">
<div>글번호 : ${data.no}</div>
<div>이름 : </div>
<div><input name="name" value="${data.name}" type="text"/></div>
<div>ID : </div>
<div><input name="id" value="${data.id}" type="text"/></div>
<div>GOAL</div>
<div><input name="goal" value="${data.goal}" type="text"/></div>
<div>작성일자</div>
<div><fmt:formatDate value="${data.date}" pattern="yyyy/MM/dd" /></div>
<div>작성시간</div>
<div><fmt:formatDate value="${data.time}" pattern="HH:mm:ss" /></div>
<div>
<input type="submit" class="btn btn-outline-info" value="완료"/>
<input type="reset" class="btn btn-outline-info" value="리셋"/>
</div>
</form>
</body>
</html>



방금 설정한 update.jsp 페이지로 갈 수 있는 controller 작성


boardController 코드

// 게시물 수정 페이지로 이동
@RequestMapping(value = "/update", method = RequestMethod.GET)
public String getupdate() throws Exception {

return "board/update";
}

상세보기 가서 수정할 수 있게끔 버튼 생성




수정버튼 클릭하면 



업데이트 페이지가 나온다. (update.jsp) 화면



// 게시물 수정 페이지로 이동
@RequestMapping(value = "/update", method = RequestMethod.GET)
public String getupdate(int no, Model model) throws Exception {
BoardVO data = service.detail(no);
model.addAttribute("data", data);
return "board/update";
}

수정페이지에서 기존 내용을 불러와서 띄워준다. 




DAO 에 함수 선언




DAOImpl 에 수정 함수 설정




service에 함수 선언



ServiceImpl 에 update 함수 설정




수정 post 를 controller 에 작성


// 게시글 수정 post
@RequestMapping(value="/update", method=RequestMethod.POST)
public String postupdate(BoardVO vo) throws Exception {
service.update(vo);
return "redirect:list"; // 리스트로 리다이렉트
}



수정 누르면




기존 내용을 불러오고




수정을 한 후에 완료를 누르면




수정 완료!


반응형