onclick
BbsDAO 에 update 메서드 추가
post method 설정 및 기존 글 내용 출력되게 표시
<div class="container">
<div class="row">
<form method="post" action="updateAction.jsp?bbsID=<%= bbsID %>">
<table class="table table-striped" style="text-align; center; border: 1px solid #dddddd">
<thead>
<tr>
<th colspan="2" style="background-color: #eeeeee; text-aligh: center;">게시판 글수정 양식</th>
</tr>
</thead>
<tbody>
<tr>
<td><input type="text" class="form-control" placeholder="글 제목" name="bbsTitle" maxlength="50" value="<%= bbs.getBbsTitle()%>"></td>
</tr>
<tr>
<td><textarea class="form-control" placeholder="글 내용" name="bbsContent" maxlength="2048" style="height:350px;"> <%= bbs.getBbsContent()%></textarea></td>
</tr>
</tbody>
</table>
<input type="submit" class="btn btn-primary pull-right" value="글쓰기">
</form>
</div>
</div>
넘어온 BbsTitle과 BbsContent 값이 null이거나 빈문자열인 경우 체크
if (request.getParameter("bbsTitle") == null || request.getParameter("bbsContent") == null
|| request.getParameter("bbsTitle").equals("") || request.getParameter("bbsContent").equals("")) {
update 메서드 실행
BbsDAO BbsDAO = new BbsDAO();
int result = BbsDAO.update(bbsID, request.getParameter("bbsTitle"), request.getParameter("bbsContent"));
if (result == -1) {
PrintWriter script = response.getWriter();
script.println("<script>");
script.println("alert('글수정에 실패했습니다')");
script.println("history.back()");
script.println("</script>");
} else {
PrintWriter script = response.getWriter();
script.println("<script>");
script.println("location.href='bbs.jsp'");
script.println("</script>");
}
delete 메서드 생성 / updateAction 페이지 활용해서 deleteAction.jsp 만들기
String SQL = "UPDATE BBS SET bbsAvailable = 0 WHERE bbsID = ?";
이 쿼리는 BBS 테이블에서 bbsID가 특정 값인 레코드의 bbsAvailable 열을 0으로 업데이트하는 역할을 합니다.
여기서 SET은 업데이트될 열을 설정하라는 의미이고, WHERE 절은 어떤 레코드를 업데이트할지를 지정합니다.
bbsID = ?는 특정 bbsID에 해당하는 레코드를 찾는 조건입니다. ?는 해당 위치에 전달되는 값으로 대체됩니다.
Java 코드에서는 PreparedStatement를 사용하여 이 부분을 설정할 것입니다.
public int delete(int bbsID) {
String SQL = "UPDATE BBS SET bbsAvailable = 0 WHERE bbsID = ?";
try {
PreparedStatement pstmt = conn.prepareStatement(SQL);
pstmt.setInt(1, bbsID);
return pstmt.executeUpdate();
} catch (Exception e) {
e.printStackTrace();
}
return -1; //db error
}
bbs.jsp 에서 온클릭 이벤트 설정
<a href="bbs.jsp" class="btn btn-primary">목록</a>
<%
if(userID != null && userID.equals(bbs.getUserID())) {
%>
<a href="update.jsp?bbsID=<%= bbsID %>" class="btn btn-primary">수정</a>
<a onclick="return confirm('정말로 삭제하시겠습까?')" href="deleteAction.jsp?bbsID=<%= bbsID %>" class="btn btn-primary">삭제</a>
<%
}
%>
'강의 > JSP 게시판 만들기' 카테고리의 다른 글
[JSP 게시판 만들기] 14. 웹 사이트 메인 페이지 디자인 (0) | 2023.12.10 |
---|---|
[JSP 게시판 만들기] 12. 게시판 보기 기능 구현하기 (0) | 2023.12.10 |
[JSP 게시판 만들기] 11. 게시판 글 목록 기능 구현하기 (0) | 2023.12.08 |
[JSP 게시판 만들기] 10. 글쓰기 기능 구현하기 (1) | 2023.12.08 |
[JSP 게시판 만들기] 9. 게시판 데이터베이스 구축하기 (1) | 2023.12.08 |