반응형
<BbsDAO.java 파일에 아래 함수 추가> : Tilte... 부들부들...
public int update(int bbsID, String bbsTitle, String bbsContent) {
String SQL = "UPDATE BBS SET bbsTitle = ?, bbsContent = ? WHERE bbsID = ?";
try {
PreparedStatement pstmt = conn.prepareStatement(SQL);
pstmt.setString(1, bbsTitle);
pstmt.setString(2, bbsContent);
pstmt.setInt(3, bbsID);
return pstmt.executeUpdate();
} catch (Exception e) {
e.printStackTrace();
}
return -1; //데이터베이스 오류
}
public int delete(int bbsID) {
String SQL = "UPDATE BBS SET bbsTitle = 0 WHERE bbsID = ?";
try {
PreparedStatement pstmt = conn.prepareStatement(SQL);
pstmt.setInt(1,bbsID);
return pstmt.executeUpdate();
}catch (Exception e) {
e.printStackTrace();
}
return -1; //데이터베이스 오류
}
}
< updateAction.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>");
}
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 = 'bbs.jsp'");
script.println("</script>");
}
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 = 'bbs.jsp'");
script.println("</script>");
} else {
if (request.getParameter("bbsTitle") == null
|| request.getParameter("bbsContent") == null
|| request.getParameter("bbsTitle").equals("")
|| request.getParameter("bbsContent").equals("")) {
PrintWriter script = response.getWriter();
script.println("<script>");
script.println("alert('입력하지 않은 사항이 있습니다.')");
script.println("history.back()");
script.println("</script");
} else {
BbsDAO bbsDAO = new BbsDAO();
int result = bbsDAO.update(bbsID,
request.getParameter("bbsTitle"),
request.getParameter("bbsContent"));
if (result == -1) {
PrintWriter script = response.getWriter();
script.println("<script>");
script.println("alert('글 수정에 실패했습니다.')");
script.println("history.back()");
script.println("</script>");
}
else {
PrintWriter script = response.getWriter();
script.println("<script>");
script.println("location.href = 'bbs.jsp'");
script.println("</script>");
}
}
}
%>
</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>");
}
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 = 'bbs.jsp'");
script.println("</script>");
}
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 = 'bbs.jsp'");
script.println("</script>");
} 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>");
}
else {
PrintWriter script = response.getWriter();
script.println("<script>");
script.println("location.href = 'bbs.jsp'");
script.println("</script>");
}
}
%>
</body>
</html>
<한글 깨짐 오류 발생>
이제 삭제 수정은 잘 되는데, 갑자기 이전에는 잘 되던 한글이 깨지기 시작.... 아오 왜그러니....
글쓰기, 수정 모두 한글이 깨지는 현상이 나타났다.
이전에 했던대로 My SQL 에서
mysql> ALTER TABLE BBS convert to charset utf8;
해주어도 해결이 안됨....
아래와 같이 BbsDAO.java 파일에서
String dbURL = "jdbc:mysql://localhost:3306/BBS?useUnicode=true&characterEncoding=UTF-8";
로 URL 을 변경하였더니 해결되었다.
휴우우우
알 수 없는 오류들이 자꾸 생기니까 답답하다. 하지만 그게 해결되면 너무 상쾌하고ㅋㅋㅋ
언젠가 스스로 뚝딱뚝딱 오류를 해결할 수 있을까?
험난한 여정이 예상된다.....
<참고 자료>
<참고 강의>
반응형
'언어공부 > JAVA&SPRING' 카테고리의 다른 글
[패스트캠퍼스 수강 후기] 자바 인강 100% 환급 챌린지 1회차 미션 (0) | 2020.08.10 |
---|---|
객체 지향 프로그래밍이란? (0) | 2020.07.08 |
[JSP 게시판 만들기] 찾았다 버그 요놈! (0) | 2020.07.07 |
[JSP 게시판 만들기] 게시판 글 목록, 게시글 보기 기능 구현 (0) | 2020.07.06 |
[JSP 게시판 만들기] 글쓰기 기능 구현하기 (0) | 2020.07.06 |
댓글