前提・実現したいこと
DBからテーブルを引っ張って、Javaで出力させたい(全件検索)のですが
表の中身を表示させることができません。
エラー等はコンソールに表示されていないです。
誤字等のケアレスミスであれば非常に申し訳ないのですが、これ以上どうすればいいか
分からないので、ご教授いただけますでしょうか。
該当のソースコード
beans
package jp.co.sss.book.bean; import java.sql.Date; public class Book { /** 書籍ID */ private int bookId; /** 書籍名 */ private String bookName; /** 著者 */ private String author; /** 発行日 */ private Date publicationDate; /** 在庫 */ private int stock; /** ジャンルID */ private int genreId; /** * ブックIDを取得 * * @return ブックID */ public int getBookId() { return bookId; } /** * ブックIDを保存 * * @param bookId * ブックID */ public void setBookId(int bookId) { this.bookId = bookId; } public String getBookName() { return bookName; } public void setBookName(String bookName) { this.bookName = bookName; } public void setAuthor(String author) { this.author = author; } public String getAuthor() { return author; } public Date getPublicationDate() { return publicationDate; } public void setPublicationDate(Date publicationDate) { this.publicationDate = publicationDate; } public int getStock() { return stock; } public void setStock(int stock) { this.stock = stock; } public int getGenreId() { return genreId; } public void setGenreId(int genreId) { this.genreId = genreId; } }
servlet1
package jp.co.sss.book.dao; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.util.ArrayList; import java.util.List; import jp.co.sss.book.bean.Book; public class BookDao { public static List<Book> findAll(){ Connection con = null; PreparedStatement ps = null; ResultSet rs = null; List<Book> bookList = new ArrayList<Book>(); try { con = DBManager.getConnection(); ps = con.prepareStatement("SELECT * FROM book"); rs = ps.executeQuery(); while(rs.next()) { Book book = new Book(); book.setBookId(rs.getInt("book_id")); book.setBookName(rs.getString("book_name")); book.setAuthor(rs.getString("author")); book.setPublicationDate(rs.getDate("publication_date")); book.setStock(rs.getInt("stock")); book.setGenreId(rs.getInt("genre_id")); bookList.add(book); } }catch (SQLException e) { e.printStackTrace(); } finally { DBManager.close(rs); DBManager.close(ps); DBManager.close(con); } return bookList; } }
servlet2
package jp.co.sss.book.servlet; import java.io.IOException; import java.util.List; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import jp.co.sss.book.bean.Book; import jp.co.sss.book.dao.BookDao; /** * Servlet implementation class BookList */ @WebServlet("/BookList") public class BookList extends HttpServlet { private static final long serialVersionUID = 1L; /** * @see HttpServlet#HttpServlet() */ public BookList() { super(); // TODO Auto-generated constructor stub } /** * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response) */ protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // TODO Auto-generated method stub List<Book> bookList = BookDao.findAll(); request.setAttribute("bookList", bookList); request.getRequestDispatcher("/jsp/select/list.jsp"); } }
jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%> <!DOCTYPE html> <html lang="ja"> <head> <meta charset="UTF-8"> <link href="<%=request.getContextPath()%>/css/style.css" rel="stylesheet" type="text/css" /> <title>書籍一覧画面</title> </head> <body> <%@include file="/jsp/common/header.jsp"%> <div id="main"> <table> <tr> <th>書籍ID</th> <th>書籍名</th> <th>筆者</th> <th>発行日</th> <th>在庫</th> <th>ジャンル</th> </tr> <c:forEach var="book" items="${book}"> <tr> <td>${book.bookId}</td> <td>${book.bookName}</td> <td>${book.author}</td> <td>${book.publicationId}</td> <td>${book.stock}</td> <td>${book.genreId}</td> </tr> </c:forEach> </table> </div> <%@include file="/jsp/common/footer.jsp"%> </body> </html>
よろしくお願いします。
まだ回答がついていません
会員登録して回答してみよう