카테고리 없음

게시물조회(model2.ver)_210525(화)

docc 2021. 7. 25. 12:44

게시물조회

게시물 조회 요청
1) 요청 업무처리
- 게시물목록.jsp (게시물들 찾아 넘기기)
2) 요청 결과통보 ( html view 보냄)
- 게시물목록창.jsp

>> 게시물DAO.java

	public ArrayList<게시물> 수집하다() {

		ArrayList<게시물> array게시물 = new ArrayList<게시물>();

		try {
			Class.forName("com.mysql.cj.jdbc.Driver");

			Connection DB연결관리자 = DriverManager.getConnection(String.format("jdbc:mysql://%s:%s/%s?useUnicode=true", ConnectionInfo.DBIP,
									ConnectionInfo.DBPORT, ConnectionInfo.DBName),
									ConnectionInfo.UID, ConnectionInfo.PASSWORD);

			Statement 명령전달자 = DB연결관리자.createStatement();

			// 페이지당 게시물들 가져오기
			String 수집SQL = "select 번호,제목,작성일,조회수 from 게시물 order by 작성일 desc";
			ResultSet 수집된표관리자 = 명령전달자.executeQuery(수집SQL);

			while (수집된표관리자.next()) {

				int 게시물번호 = 수집된표관리자.getInt("번호");
				String 제목 = 수집된표관리자.getString("제목");
				java.sql.Date 작성일 = 수집된표관리자.getDate("작성일");
				int 조회수 = 수집된표관리자.getInt("조회수");

				게시물 게시물1 = new 게시물();

				게시물1.set번호(게시물번호);
				게시물1.set제목(제목);
				게시물1.set작성일(작성일);
				게시물1.set조회수(조회수);

				array게시물.add(게시물1);
			}

			수집된표관리자.close();
			DB연결관리자.close();
		} catch (Exception e) {
			e.printStackTrace();
		}

		return array게시물;
	}

>> 게시물목록.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ page import="com.stone.board3_maven.boardmanage.*" %>
<%@ page import="com.stone.board3_maven.util.RefInteger"%>
<%@ page import="java.util.ArrayList"%>
<%
	String str페이지 = request.getParameter("page");
	int 페이지 = (str페이지 == null)? 1: Integer.valueOf(str페이지);
	//1. 업무
	//1-1. 업무 규칙 검사
	//1-2. 데이터 수집
	게시물DAO dao = new 게시물DAO();
	ArrayList<게시물> 게시물들 = dao.수집하다();
	// object형이 매개변수인 자리에 ArrayList<게시물> 이 들어가, "게시물들" 이라는 key에 "ArrayList<게시물>" value값이 들어간다.
	request.setAttribute("게시물들", 게시물들);
	//
	RequestDispatcher rd = request.getRequestDispatcher("게시물목록창.jsp");
	rd.forward(request, response);
%>

>> 게시물목록창.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
	pageEncoding="UTF-8"%>
<%@ page import="java.sql.*"%>
<%@page import="java.util.*"%>
<%@page import="com.stone.board3_maven.config.ConnectionInfo"%>
<%@page import="com.stone.board3_maven.boardmanage.*" %>
<%
	ArrayList<게시물> 게시물들 = (ArrayList<게시물>)request.getAttribute("게시물들");

%>

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
	<center>
		<!-- 3. 목록출력 -->
		<h1>게시물목록</h1>
		<ul style="list-style: none">
			<%
				for(int i = 0; i<게시물들.size(); i++)
				{
					게시물 수집된게시물 = 게시물들.get(i);
			%>

			<%-- 3-1. 게시물 1개출력 --%>
			<li>
			<%= 수집된게시물.get번호() %>. &nbsp;&nbsp;
			<%= 수집된게시물.get제목() %>
			<%= 수집된게시물.get작성일().toString() %>&nbsp;&nbsp; 
			<%= 수집된게시물.get조회수() %> 
			</li>
<%
 	}
 %>
<br><a href="게시물등록준비.jsp">글쓰기</a><br>

</ul>
</center>

</body>
</html>