위로 아래

글목록 비즈니스 로직

글 목록을 불러오기 위해서는, 데이터베이스에 접근해 데이터를 불러와야하므로 DTO와 DAO가 필요하다.

 

순서는 다음과 같다.

  1. DAO의 getArtcles() 메소드의 반환값인 DTO ArrayList를 받기 위해 DTO 객체를 생성한다.
  2. DAO 객체를 생성하고 getArtcles()를 통해 DTO ArrayList를 받는다.
  3. view/BoardList.jsp에서 사용할 속성을 설정해준다.
  4. 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);
%>