위로 아래

글 삭제 Action

해당 게시글의 bno만 알면 손쉽게 데이터 행을 삭제할 수 있다. 

jsp 파일도 따로 필요 없다.

결과를 받아 성공했는지 수정했는지 출력한다.

package action;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import model.BoardDAO;

public class DeleteAction implements CommandAction {

	@Override
	public String requestProc(HttpServletRequest request, HttpServletResponse response) throws Exception {
		
		int bno = Integer.parseInt(request.getParameter("bno"));
		int r = 0;
		
		BoardDAO dao = BoardDAO.getInstance();
		
		r = dao.deleteArticle(bno);
		
		String msg = null;
		String page = "list.do";
		
		if(r>0) msg = "삭제 성공";
		else msg = "삭제 실패";
		
		request.setAttribute("msg", msg);
		request.setAttribute("page", page);
		
		return "view/MsgPage.jsp";
	}

}

 

 

글 삭제 DAO

public int deleteArticle(int bno) {
    Connection conn = null;
    PreparedStatement pstmt = null;
    int r = 0;

    try {
        conn = DBConnector.getInstance().getConnection();
        String sql = "DELETE FROM board WHERE bno=?";
        pstmt = conn.prepareStatement(sql);
        pstmt.setInt(1, bno);
        r = pstmt.executeUpdate();

    } catch(Exception e) {
        e.printStackTrace();
    } finally {
        try {
            if(conn!=null) conn.close();
            if(pstmt!=null) pstmt.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
    return r;
}

 

 

글 삭제 매핑

/list.do=action.ListAction
/writeForm.do=action.WriteFormAction
/writeAction.do=action.WriteAction
/content.do=action.ContentAction
/update.do=action.UpdateAction
/updateProc.do=action.UpdateProc
/delete.do=action.DeleteAction