위로
아래
글목록 비즈니스 로직
글 목록을 불러오기 위해서는, 데이터베이스에 접근해 데이터를 불러와야하므로 DTO와 DAO가 필요하다.
순서는 다음과 같다.
- DAO의 getArtcles() 메소드의 반환값인 DTO ArrayList를 받기 위해 DTO 객체를 생성한다.
- DAO 객체를 생성하고 getArtcles()를 통해 DTO ArrayList를 받는다.
- view/BoardList.jsp에서 사용할 속성을 설정해준다.
- RequestDispatcher를 통해 속성과 함께 글목록 페이지로 이동한다.
DTO 객체 생성
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ page import = "bean.BoardDTO" %>
<%
BoardDTO dto = new BoardDTO();
%>
DAO 객체 생성과 getArticle() 메소드
DAO는 생성자가 private이므로 getInstance()메소드를 통해 생성한다.
DTO 타입의 List에 getArticles() 메소드의 결과를 저장한다.
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ page import = "bean.BoardDTO" %>
<%@ page import = "bean.BoardDAO" %>
<%
BoardDAO dao = BoardDAO.getInstance();
List<BoardDTO> articles = dao.getArticles();
%>
전달할 속성 설정
DTO 리스트인 articles와, 리스트에 들어 있는 객체의 개수 total을 설정한다.
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ page import = "java.util.List" %>
<%
request.setAttribute("articles", articles);
request.setAttribute("total", articles.size());
%>
페이지 이동
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ page import = "java.util.List" %>
<%
RequestDispatcher dp = request.getRequestDispatcher("../view/BoardList.jsp");
dp.forward(request, response);
%>
속성을 가지고 가야하니, sendRedirect말고 RequestDispatcher를 이용한다.
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ page import = "bean.BoardDTO" %>
<%@ page import = "bean.BoardDAO" %>
<%@ page import = "java.util.List" %>
<%
BoardDTO dto = new BoardDTO();
BoardDAO dao = BoardDAO.getInstance();
List<BoardDTO> articles = dao.getArticles();
request.setAttribute("articles", articles);
request.setAttribute("total", articles.size());
RequestDispatcher dp = request.getRequestDispatcher("../view/BoardList.jsp");
dp.forward(request, response);
%>
전체 코드
더보기
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ page import = "bean.BoardDTO" %>
<%@ page import = "bean.BoardDAO" %>
<%@ page import = "java.util.List" %>
<%
BoardDTO dto = new BoardDTO();
BoardDAO dao = BoardDAO.getInstance();
List<BoardDTO> articles = dao.getArticles();
request.setAttribute("articles", articles);
request.setAttribute("total", articles.size());
RequestDispatcher dp = request.getRequestDispatcher("../view/BoardList.jsp");
dp.forward(request, response);
%>