diff --git a/jspblog/src/main/java/com/example/jspblog/config/ForbiddenUrlConfig.java b/jspblog/src/main/java/com/example/jspblog/config/ForbiddenUrlConfig.java index cc29250a..6d806a17 100644 --- a/jspblog/src/main/java/com/example/jspblog/config/ForbiddenUrlConfig.java +++ b/jspblog/src/main/java/com/example/jspblog/config/ForbiddenUrlConfig.java @@ -12,7 +12,9 @@ public class ForbiddenUrlConfig implements Filter { HttpServletRequest request = (HttpServletRequest) req; HttpServletResponse response = (HttpServletResponse) resp; - if (request.getRequestURI().equals("/jspblog/") || request.getRequestURI().equals("/jspblog/index.jsp")) { + String exception = request.getRequestURI(); + + if (exception.equals("/jspblog/") || exception.equals("/jspblog/index.jsp") || exception.equals("/jspblog/user/jusoPopup.jsp")) { chain.doFilter(request, response); } else { PrintWriter out = response.getWriter(); diff --git a/jspblog/src/main/java/com/example/jspblog/domain/reply/ReplyDao.java b/jspblog/src/main/java/com/example/jspblog/domain/reply/ReplyDao.java index ea48f732..8998fe61 100644 --- a/jspblog/src/main/java/com/example/jspblog/domain/reply/ReplyDao.java +++ b/jspblog/src/main/java/com/example/jspblog/domain/reply/ReplyDao.java @@ -12,7 +12,6 @@ import java.util.List; public class ReplyDao { public int save(SaveReqDto dto) { - System.out.println(dto); String sql = "insert into reply(userId, boardId, content, createDate) values(?, ?, ?, now())"; Connection conn = DB.getConnection(); PreparedStatement pstmt = null; @@ -69,7 +68,7 @@ public class ReplyDao { } public List findAll(int boardId) { - String sql = "select * from reply where boardId= order by desc"; + String sql = "select * from reply where boardId=? order by createDate desc"; Connection conn = DB.getConnection(); PreparedStatement pstmt = null; ResultSet rs = null; @@ -97,4 +96,23 @@ public class ReplyDao { } return null; } + + public int deleteById(int id) { + String sql = "delete from reply where id=?"; + Connection conn = DB.getConnection(); + PreparedStatement pstmt = null; + if (conn != null) { + try { + pstmt = conn.prepareStatement(sql); + pstmt.setInt(1, id); + int result = pstmt.executeUpdate(); + return result; + } catch (Exception e) { + e.printStackTrace(); + } finally { + DB.close(conn, pstmt); + } + } + return -1; + } } diff --git a/jspblog/src/main/java/com/example/jspblog/service/ReplyService.java b/jspblog/src/main/java/com/example/jspblog/service/ReplyService.java index 1f76ce46..d7070929 100644 --- a/jspblog/src/main/java/com/example/jspblog/service/ReplyService.java +++ b/jspblog/src/main/java/com/example/jspblog/service/ReplyService.java @@ -25,4 +25,8 @@ public class ReplyService { public List 댓글목록보기(int boardId) { return replyDao.findAll(boardId); } + + public int 댓글삭제(int id) { + return replyDao.deleteById(id); + } } diff --git a/jspblog/src/main/java/com/example/jspblog/web/ReplyController.java b/jspblog/src/main/java/com/example/jspblog/web/ReplyController.java index 361ada51..c2428742 100644 --- a/jspblog/src/main/java/com/example/jspblog/web/ReplyController.java +++ b/jspblog/src/main/java/com/example/jspblog/web/ReplyController.java @@ -56,6 +56,16 @@ public class ReplyController extends HttpServlet { Script.responseData(response, responseData); break; } + case "delete" : { + int id = Integer.parseInt(request.getParameter("id")); + int result = replyService.댓글삭제(id); + + CommonRespDto dto = new CommonRespDto<>(); + dto.setStatusCode(result); + + String jsonData = new Gson().toJson(dto); + Script.responseData(response, jsonData); + } } } } diff --git a/jspblog/src/main/webapp/board/detail.jsp b/jspblog/src/main/webapp/board/detail.jsp index f8c7c91f..ab083d8a 100644 --- a/jspblog/src/main/webapp/board/detail.jsp +++ b/jspblog/src/main/webapp/board/detail.jsp @@ -47,7 +47,9 @@ ${reply.userId}

${reply.content}

- delete + + delete +
diff --git a/jspblog/src/main/webapp/js/boardDetail.js b/jspblog/src/main/webapp/js/boardDetail.js index 023ad0d7..97f35fc5 100644 --- a/jspblog/src/main/webapp/js/boardDetail.js +++ b/jspblog/src/main/webapp/js/boardDetail.js @@ -11,7 +11,15 @@ function addReply(data) { } function deleteReply(id) { - console.log(id); + $.ajax({ + type: "post", + url: "/jspblog/reply?cmd=delete&id="+id, + dataType: "json" + }).done(function (result){ + if (result.statusCode === 1){ + $("#reply-"+id).remove(); + } + }) } function replySave(userId, boardId) { @@ -31,6 +39,7 @@ function replySave(userId, boardId) { }).done(function (result){ if (result.statusCode === 1){ addReply(result.data); + $("#reply__write__form").val(""); } }) }