ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • JSP 게시판 만들기(2)
    프로그래밍/JSP 2022. 12. 2. 23:23
    728x90

     

     

    이번 시간에는 게시글 작성 페이지를 만들어보자.

     

     

    게시글 작성 페이지(write.jsp) 작성

    <%@ page language="java" contentType="text/html; charset=UTF-8"
        pageEncoding="UTF-8"%>
    <%
    	String userid = (String)session.getAttribute("userid");
    	if(userid == null){
    %>
    <script>
    	alert('로그인 후 이용하세요');
    	location.href='../login.jsp';
    </script> 
    <%		
    	}else{
    %>
    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    <title>커뮤니티 - 글쓰기</title>
    </head>
    <body>
    	<h2>커뮤니티 - 글쓰기</h2>
    	 <form method="post" action="./write_ok.jsp">
    	 	<p>작성자 : <%=userid%></p>
    	 	<p>제목<input type="text" name="b_title"></p>
    	 	<p>내용</p>
    	 	<p><textarea name="b_content" rows="5" column="40"></textarea></p>
    	 	<p><input type="submit" value="등록"> 
               <input type="reset" value="다시작성"> 
               <input type="button" value="리스트" onclick="location.href='list.jsp'"></p>
    	 </form>
    </body>
    </html>
    <%	
    }
    %>

    로그인이 되어있어야 접근이 가능한 페이지임으로 세션을 불러와 확인하고 데이터는 form태그를 활용하여 post방식으로 글 제목, 내용에 입력된 데이터를 write_ok.jsp로 보낸다. 작성자의 이름은 로그인된 유저의 세션값을 받아와 처리한다.

     

     

     

    게시글 글작성 처리 페이지(write_ok.jsp) 작성

    <%@ page import="java.sql.*"%>
    <%@ page language="java" contentType="text/html; charset=UTF-8"
        pageEncoding="UTF-8"%>
    <%@ page import="com.koreait.db.Dbconn"%>
    <%
    	request.setCharacterEncoding("UTF-8");
    	String userid = (String)session.getAttribute("userid");
    	if(userid == null){
    %>
    <script>
    	alert('로그인 후 이용하세요');
    	location.href='../login.jsp';
    </script>
    <%			
    	}else{
    		String b_title = request.getParameter("b_title");
    		String b_content = request.getParameter("b_content");
    		
    		Connection conn = null;
    		PreparedStatement pstmt = null;
    		
    		String sql = "";
    
    		try {
    			conn = Dbconn.getConnection();
    			if (conn != null) {
    				sql = "insert into tb_board (b_userid, b_title, b_content) values (?, ?, ?);";
    				pstmt = conn.prepareStatement(sql);
    				pstmt.setString(1, userid);
    				pstmt.setString(2, b_title);
    				pstmt.setString(3, b_content);
    				pstmt.executeUpdate();
    			}
    		
    		} catch (Exception e) {
    		e.printStackTrace();
    	}
    %>
    <script>
    	alert('게시글이 등록되었습니다.');
    	location.href='./list.jsp';
    </script>
    <%
    	}
    %>

    write.jsp에서 전달받은 데이터는 request.getParameter를 통해 변수에 저장하여 쿼리를 통해 게시글 테이블로 insert 처리하게 된다. 등록이 되면 다시 게시판 페이지(list.jsp)로 이동하고 정상적으로 글이 등록이 되었다면 게시판 리스트에 저장된 글이 보여지게 될 것이다.

     

    게시글 작성

     

    게시판 페이지 결과

     

     

     

     

     

    728x90

    '프로그래밍 > JSP' 카테고리의 다른 글

    JSP 게시판 만들기(4)  (0) 2022.12.06
    JSP 게시판 만들기(3)  (0) 2022.12.03
    JSP 게시판 만들기(1)  (0) 2022.11.30
    Java Beans 활용하여 로그인 만들기(2)  (0) 2022.11.29
    Java Beans 활용하여 로그인 만들기(1)  (0) 2022.11.27

    댓글

Designed by Tistory.