1. 책 목록 : 책 목록을 최신순으로 보여주게 되는 기능 (http://localhost:8080/list)
2. 책 목록 쿼리 작성
▷ src/main/resources/sqlmap/book_SQL.xml
...(생략)... <!-- 책 목록 쿼리 작성 --> <select id="select_list" parameterType="hashMap" resultType="hashMap"> <![CDATA[ select book_id, title, category, price, insert_date from order by insert_date desc ]]> </select> </mapper>
3. 책 목록 DAO 메소드 작성
▷ 책 목록 데이터베이스에 접속하는 메소드를 작성
▷ src/main/java/sample/spring/yse/BookDao.java
...(생략)... //책 목록 DAO 메소드 작성 public List<Map<String, Object>> selectList(Map<String, Object> map){ return this.sqlSessionTemplate.selectList("book.select_list", map); } }
Map<String, Object>의 목록(List)타입으로 읽어들일 수 있습니다.
4. 책 목록 서비스 클래스 메소드 생성
▷ src/main/java/sample/spring/yse/BookServiceImpl.java
...(생략)... @Override public List<Map<String, Object>> list(Map<String, Object> map){ return this.bookDao.selectList(map); } }
5. 책 목록 서비스 인터페이스 메소드 시그니쳐 생성
▷ src/main/java/sample/spring/yse/BookService.java
List<Map<String, Object>> list(Map<String, Object> map);
인터페이스에 위의 코드 추가
6. 책 목록 컨트롤러 메소드 추가
▷ src/main/java/sample/spring/yse/BookController.java
...(생략)... // 책 목록 컨트롤러 메소드 추가 @RequestMapping(value = "list") public ModelAndView list(@RequestParam Map<String, Object> map) { List<Map<String, Object>> list = this.bookService.list(map); ModelAndView mav = new ModelAndView(); mav.addObject("data", list); mav.setViewName("/book/list"); return mav; } }
7. 책 목록 뷰 작성
▷ src → main → webapp → WEB-INF → views → book 우클릭 후 new → file 을 선택하고 파일 이름을 list.jsp로 생성
<%@ page pageEncoding="UTF-8" contentType="text/html;charset=utf-8" %> <%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %> <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> <html> <head> <title>책 목록</title> </head> <body> <h1>책 목록</h1> <table> <thead> <tr> <td>제목</td> <td>카테고리</td> <td>가격</td> </tr> </thead> <tbody> <c:forEach var="row" items="${ data }"> <tr> <td><a href="/detail?bookId=${row.book_id}"> ${row.title}</a></td> <td>${row.category}</td> <td><fmt:formatNumber type="number" maxFractionDigits="3" value="${row.price}" /></td> </tr> </c:forEach> </tbody> </table> <p><a href="/create">생성</a></p> </body> </html>
8. 책 목록 화면 확인(localhost:8080/list)
localhost:8080/list로 접속하면 위와 같이 작성했던 목록이 최신 순으로 나타납니다.
list.jsp 파일을 생성하면 책 목록이 나열되는 화면이 나타납니다!
지금까지 DB에 저장되어 있던 책 목록들이 제목, 카테고리, 가격 순으로 나타나네요!
마지막으로 책 검색 기능을 구현 가능하도록 만들어 볼게요!!
많은 분들의 피드백은 언제나 환영합니다! 많은 댓글 부탁드려요~~
'BackEnd > Spring' 카테고리의 다른 글
[코드로 배우는 스프링 웹 프로젝트] ch01 스프링 개발환경 (0) | 2023.03.24 |
---|---|
[코드로 배우는 스프링 웹 프로젝트] java spring 책 검색 기능 추가하기 (0) | 2023.03.18 |
[코드로 배우는 스프링 웹 프로젝트] java spring 책 삭제 기능 만들기 (0) | 2023.03.17 |
[코드로 배우는 스프링 웹 프로젝트] java spring 책 수정 기능 만들기 (0) | 2023.03.17 |
[코드로 배우는 스프링 웹 프로젝트] java spring 책 수정 화면 만들기 (0) | 2023.03.17 |