[게시판] 5. 게시판 목록 기능 구현

[게시판] 5. 게시판 목록 기능 구현

1. boardMapper.xml 파일에 아래 코드 추가

SELECT BNO , TITLE , WRITER , REGDATE FROM MP_BOARD ORDER BY BNO DESC

resultType : 쿼리 실행한 결과값을 담는 곳의 위치

2. BoardDAO 파일에 들어가 boardMapper와 연결되는 코드 작성

// 게시물 목록 조회 public List list() throws Exception;

3. 구현부인 BoardDAOImpl에서 인터페이스 BoardDAO에 정의된 멤버들을 클래스에서 대신 구현한다.

// 게시물 목록 조회 @Override public List list() throws Exception { return sqlSession.selectList("boardMapper.list"); // boardMapper.xml에서 mapper의 namespace가 boardMapper이고 그 중 id가 list인 것 가져와 반환 }

4. BoardDAO와 연결되는 BoardService 작성

// 게시물 목록 조회 public List list() throws Exception;

5. 구현부인 BoardServiceImpl 작성

// 게시물 목록 조회 @Override public List list() throws Exception { return dao.list(); // dao에 있는 list()함수 호출해 반환 }

6. BoardController로 들어와 URL은 '/list'로 정의

// 게시판 목록 조회 @RequestMapping(value = "/list", method = RequestMethod.GET) public String list(Model model) throws Exception{ logger.info("list"); model.addAttribute("list",service.list()); //service.list()에 담긴 데이터를 list 라는 이름으로 담을 것 return "board/list"; }

+ 게시판 글 작성 코드의 return값을 "redirect:/board/list"; 로 변경

오라클 -> DAO -> Service -> Controller로 가져온 데이터들을 jsp에 뿌려주는 작업을 할 것이다.

7. src/main/webapp/WEB-INF/views/board 폴더에 list.jsp 파일 생성하고 코드 입력

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ taglib uri = "http://java.sun.com/jsp/jstl/core" prefix="c" %> <%@ taglib prefix = "fmt" uri = "http://java.sun.com/jsp/jstl/fmt" %> 게시판 게시판 홈 - 글 작성 번호제목작성자등록일

8. 확인하기

1) 서버 실행

2) localhost:8080/board/list 접속

참고 자료

https://eminent-track-b16.notion.site/c9c5a42ef7a84c24bc787aeb03d789e1?v=7e9c66b790514bd697bfc8d3d134097f

from http://wldwlddl59.tistory.com/49 by ccl(A) rewrite - 2021-12-11 19:02:11