class BoardDeleteCon
package control; import java.io.IOException; import javax.servlet.RequestDispatcher; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import model.BoardBean; import model.BoardDAO; @WebServlet("/BoardDeleteCon.do") public class BoardDeleteCon extends HttpServlet { protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { reqPro(request, response); } protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { reqPro(request, response); } protected void reqPro(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //글 삭제이기에 글번호를 입력 int num =Integer.parseInt(request.getParameter("num")); //데이터베이스에 접근하여 하나의 게시글을 리넡하는 메소드 BoardDAO bdao =new BoardDAO(); //빈클래스 타입으로 리턴 BoardBean bean =bdao.getOuneUpdateBoard(num);//조회수를 증가시키지 않은 메소드 request.setAttribute("bean", bean); RequestDispatcher dis =request.getRequestDispatcher("BoardDeleteForm.jsp"); dis.forward(request, response); } }
BoardDeleteForm.jsp
<%@page import="model.BoardBean"%> <%@page import="model.BoardDAO"%> <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html> <html> <head> <jsp:include page="Header.jsp"/> </head> <body> <div class="row"> <div class="col-xs-2 col-md-2"></div> <div class="col-xs-8 col-md-8"> <h2 class="text-center">글 삭제하기</h2><p> </p> <form action="BoardDeleteProcCon.do" method="post"> <div class="table table-responsive"> <table class="table"> <tr> <td class="danger">작성자</td> <td>${bean.writer }></td> <td class="danger">작성일</td> <td>${bean.reg_date }</td> </tr> <tr> <td class="danger">제목</td> <td colspan="3">${bean.subject }</td> </tr> <tr> <td class="danger">패스워드</td> <td><input type="password" name="pass" class="form-control"></td> </tr> <tr> <td colspan="4" class="text-center"> <input type="hidden" name="password" value="${bean.password }"> <input type="hidden" value="${bean.num }" name="num" > <input type="submit" value="글삭제" class="btn btn-danger"> <input type="button" class="btn btn-primary" onclick="location.href='BoardListCon.do'" value="목록보기"> </td> </tr> </table> </div> </form> </div> </div> <jsp:include page="Bottom.jsp"/> </body> </html>
class BoardDAO
public void deleteBoard(int num) { getCon(); try{ //3 String sql ="delete from board where num=?"; pstmt=con.prepareStatement(sql); //? pstmt.setInt(1, num); //4 pstmt.executeUpdate(); //5 }catch(Exception e){ e.printStackTrace(); } }
class BoardDeleteProcCon
package control; import java.io.IOException; import javax.servlet.RequestDispatcher; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import model.BoardDAO; @WebServlet("/BoardDeleteProcCon.do") public class BoardDeleteProcCon extends HttpServlet { protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { reqPro(request, response); } protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { reqPro(request, response); } protected void reqPro(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //사용자로 부터 넘어오 데이터 3개를 받음줌 int num= Integer.parseInt(request.getParameter("num")); String password=request.getParameter("password"); String pass =request.getParameter("pass"); //패스워드가 같을 경우에는 데이터를 삭제 하고 리스트화면을 보여줌 if(password.equals(pass)){ BoardDAO bdao =new BoardDAO(); bdao.deleteBoard(num); RequestDispatcher dis =request.getRequestDispatcher("BoardListCon.do"); dis.forward(request, response); }else{ request.setAttribute("msg", "delete"); RequestDispatcher dis =request.getRequestDispatcher("BoardListCon.do"); dis.forward(request, response); } } }
동영상 강좌와 다르게 모바일 적용이 가능한 반응형 부트스트랩을 사용하였다.
여기서는 jsp 를 배우는 강좌 이기 때문에 html 적 요소에는 비중있게 생각 하지 않아도 될 것이다.
또한, 일부 자바 코드는 제 입맛에 맞게 변경 하였습니다.
혹시, 이 강의를 들으면서 제 글을 읽고 소스코드를 참조하는 수강생이 있다면 동영상의 코드와 다르다고 생각지 마세요. 대부분 동여상 내용과 같으니 학습에 도움이 될거라 생각 합니다.
소스 : https://github.com/braverokmc79/jsp_sin
유튜브 동영상 출처 :
강사 : 신형섭(잭임연구원)
저작권 : (주)소프트캠퍼스 http://www.softcampus.co.kr 더많은 무료 강의는 사이트에서 확인하실수 있습니다.
댓글 ( 4)
댓글 남기기