본문 바로가기
Back-End/JSP & Thymeleaf

11.게시판 글삭제및 글목록 기능

by 두두리안 2020. 12. 25.
728x90

view,delete

글보기,글삭제 기능

view의 jsp 구성

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@ page import="java.io.PrintWriter"%>
<%@ page import="bbs.Bbs"%>
<%@ page import="bbs.BbsDAO"%>
<!DOCTYPE html>
<html>
<head>

</head>
<jsp:include page="head.jsp" flush="false" />
<body>
    <%
        String userID = null;
        if (session.getAttribute("userID") != null) {
            userID = (String) session.getAttribute("userID");
        }
        int bbsID = 0;
        if (request.getParameter("bbsID") != null) {
            bbsID = Integer.parseInt(request.getParameter("bbsID"));
        }
        if (bbsID == 0) {
            PrintWriter script = response.getWriter();
            script.println("<script>");
            script.println("alert('유효하지 않은 글입니다.');");
            script.println("location.href='board.jsp';");
            script.println("</script>");
            script.close();
        }
        Bbs bbs = new BbsDAO().getBbs(bbsID);

    %>

    <div class="container">
        <div class="row">
            <table class="table table-bordered" style="text-align: center;">
                <thead>
                    <tr>
                        <th colspan="3" style="background-color: #eeeeee; text-align: center;">게시판 글 보기</th>
                    </tr>
                </thead>
                <tbody>
                        <tr>
                            <td style="width: 20%;">글 제목</td>
                            <td colspan="2"><%= bbs.getBbsTitle() %></td>
                        </tr>
                        <tr>
                            <td>작성자</td>
                            <td colspan="2"><%= bbs.getUserID() %></td>
                        </tr>
                        <tr>
                            <td>작성일자</td>
                            <td colspan="2"><%= bbs.getBbsDate() %></td>
                        </tr>
                        <tr>
                            <td>내용</td>
                            <td colspan="2" style="min-height: 200px; text-align: left;"><%= bbs.getBbsContent().replaceAll(" ", "&nbsp;").replaceAll("<", "&lt;").replaceAll(">", "&gt;").replaceAll("\n", "<br>") %></td>
                        </tr>
                </tbody>
            </table>
            <a href="board.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>
            <%
            }
            %>
        </div>
    </div>
    <jsp:include page="footer.jsp" flush="false" />
</body>
</html>

deleteAction의 jsp 구성

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@ page import="bbs.BbsDAO"%>
<%@ page import="bbs.Bbs"%>
<%@ page import="java.io.PrintWriter"%>
<%
    request.setCharacterEncoding("utf-8");
%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JSP 게시판 웹 사이트</title>
</head>
<body>
    <%
        String userID = null;
        if (session.getAttribute("userID") != null) {
            userID = (String) session.getAttribute("userID");
        }
        if (userID == null) {
            PrintWriter script = response.getWriter();
            script.println("<script>");
            script.println("alert('로그인을 하세요.');");
            script.println("location.href='login.jsp'");
            script.println("</script>");
            script.close();
        }
        int bbsID = 0;
        if (request.getParameter("bbsID") != null) {
            bbsID = Integer.parseInt(request.getParameter("bbsID"));
        }
        if (bbsID == 0) {
            PrintWriter script = response.getWriter();
            script.println("<script>");
            script.println("alert('유효하지 않은 글입니다.');");
            script.println("location.href='board.jsp';");
            script.println("</script>");
            script.close();
        }
        Bbs bbs = new BbsDAO().getBbs(bbsID);
        if (!userID.equals(bbs.getUserID())) {
            PrintWriter script = response.getWriter();
            script.println("<script>");
            script.println("alert('권한이 없습니다.');");
            script.println("location.href='board.jsp';");
            script.println("</script>");
            script.close();
        } else {
            BbsDAO bbsDAO = new BbsDAO();
            int result = bbsDAO.delete(bbsID);
            if (result == -1) {
                PrintWriter script = response.getWriter();
                script.println("<script>");
                script.println("alert('글 삭제에 실패하였습니다.');");
                script.println("history.back();");
                script.println("</script>");
                script.close();
            } else {
                PrintWriter script = response.getWriter();
                script.println("<script>");
                script.println("location.href = 'board.jsp';");
                script.println("</script>");
                script.close();
            }
        }
    %>
</body>
</html>
728x90

'Back-End > JSP & Thymeleaf' 카테고리의 다른 글

10.게시판 글수정 기능  (0) 2020.12.25
9.게시판 글쓰기 기능  (0) 2020.12.25
8.게시판 메인화면  (0) 2020.12.25
7.게시판 데이터 관리 및 DB와 연결하기  (0) 2020.12.25
6.로그인 확인여부 기능  (0) 2020.12.25