프로젝트 구조 : 게시글 수정폼 페이지인 boardModifyForm.jsp와 수정하는 boardModifyAction.jsp 추가
0_2강좌의 boardView.jsp파일 43번째 라인에 글을 수정할 수 있는 링크 추가
1 2 3 4 | <div> <a href="<%=request.getContextPath()%>/board/boardModifyForm.jsp?boardNo=<%=boardNo%>">수정</a> <a href="<%=request.getContextPath()%>/board/boardRemoveForm.jsp?boardNo=<%=boardNo%>">삭제</a> </div> | cs |
boardModifyForm.jsp
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 | <%@ page language="java" contentType="text/html; charset=EUC-KR" pageEncoding="EUC-KR"%> <%@ page import="java.sql.*" %> <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=EUC-KR"> <title>BOARD MODIFY FORM</title> </head> <body> <h1>BOARD MODIFY</h1> <% if(request.getParameter("boardNo") == null) { response.sendRedirect(request.getContextPath()+"/board/boardList.jsp"); } else { int boardNo = Integer.parseInt(request.getParameter("boardNo")); System.out.println("boardModify param boardNo:"+boardNo); String boardTitle = ""; String boardContent = ""; String dbUrl = "jdbc:mysql://127.0.0.1:3306/injava?useUnicode=true&characterEncoding=euckr"; String dbUser = "root"; String dbPw = "java0000"; Connection connection = null; PreparedStatement statement = null; ResultSet resultSet = null; try { Class.forName("com.mysql.jdbc.Driver"); connection = DriverManager.getConnection(dbUrl, dbUser, dbPw); String selectSql = "SELECT board_title, board_content FROM board WHERE board_no=?"; statement = connection.prepareStatement(selectSql); statement.setInt(1, boardNo); resultSet = statement.executeQuery(); if(resultSet.next()) { boardTitle = resultSet.getString("board_title"); boardContent = resultSet.getString("board_content"); } else { response.sendRedirect(request.getContextPath()+"/board/boardList.jsp"); } } catch (Exception e) { e.printStackTrace(); out.print("BOARD MODIFY FROM ERROR!"); } finally { try {resultSet.close();} catch(Exception e){} try {statement.close();} catch(Exception e){} try {connection.close();} catch(Exception e){} } %> <form action="<%=request.getContextPath()%>/board/boardModifyAction.jsp" method="post"> <div>boardNo</div> <div><input name="boardNo" value="<%=boardNo%>" type="text" readonly="readonly"/></div> <div>비밀번호확인: </div> <div><input name="boardPw" id="boardPw" type="password"/></div> <div>boardTitle : </div> <div><input name="boardTitle" value="<%=boardTitle%>" id="boardTitle" type="text"/></div> <div>boardContent : </div> <div><textarea name="boardContent" id="boardContent" rows="5" cols="50"><%=boardContent%></textarea></div> <div> <input type="submit" value="글수정"/> <input type="reset" value="초기화"/> </div> </form> <% } %> </body> </html> | cs |
boardModifyAction.jsp : 비밀번호가 일치하면 글 수정
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 | <%@ page language="java" contentType="text/html; charset=EUC-KR" pageEncoding="EUC-KR"%> <%@ page import="java.sql.*" %> <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=EUC-KR"> <title>BOARD MODIFY ACTION</title> </head> <body> <% request.setCharacterEncoding("euc-kr"); if(request.getParameter("boardNo") == null || request.getParameter("boardPw") == null) { response.sendRedirect(request.getContextPath()+"/board/boardList.jsp"); } else { int boardNo = Integer.parseInt(request.getParameter("boardNo")); System.out.println("boardModifyAction param boardNo :"+boardNo); String boardPw = request.getParameter("boardPw"); System.out.println("boardModifyAction param boardPw :"+boardPw); String boardTitle = request.getParameter("boardTitle"); System.out.println("boardModifyAction param boardTitle :"+boardTitle); String boardContent = request.getParameter("boardContent"); System.out.println("boardModifyAction param boardContent :"+boardContent); String dbUrl = "jdbc:mysql://127.0.0.1:3306/injava?useUnicode=true&characterEncoding=euckr"; String dbUser = "root"; String dbPw = "java0000"; Connection connection = null; PreparedStatement statement = null; try { Class.forName("com.mysql.jdbc.Driver"); connection = DriverManager.getConnection(dbUrl, dbUser, dbPw); String selectSql = "UPDATE board SET board_title=?, board_content=? WHERE board_no=? AND board_pw=?"; statement = connection.prepareStatement(selectSql); statement.setString(1, boardTitle); statement.setString(2, boardContent); statement.setInt(3, boardNo); statement.setString(4, boardPw); statement.executeUpdate(); response.sendRedirect(request.getContextPath()+"/board/boardView.jsp?boardNo="+boardNo); } catch(Exception e) { e.printStackTrace(); out.print("BOARD MODIFY ERROR!"); } finally { try {statement.close();} catch(Exception e){} try {connection.close();} catch(Exception e){} } } %> </body> </html> | cs |
'P. 자바 미니 프로젝트 > jsp 게시판' 카테고리의 다른 글
P.1.4 JSP 게시판 만들기4 - 글삭제 (0) | 2016.11.09 |
---|---|
P.1.3 JSP 게시판 만들기3 - 글내용 (0) | 2016.11.09 |
P.1.2 JSP 게시판 만들기2 - 글목록 (0) | 2016.11.04 |
P.1.1 JSP 게시판 만들기1 - 글입력 (0) | 2016.11.04 |