01: 流程分析和数据库建表阶段
02: 编写和配置过滤器(防止页面乱码)
03:项目搭建 & 工具类的实现 &依赖导入
04: 建立数据库的实体类(pojo)
05: 实现登录功能
06: 查询所有书籍功能
07:模糊查询功能
08:页面所有功能实现(附源码下载)

2.0 实现-06: 查询所有书籍功能

刚刚页面跳转过去以后,页面并没有值,现在我们在跳转过去的时候,就从后台数据库取值

2.0.1 创建 BookDao

BookDao.java

package com.tian.dao.book;import com.tian.pojo.Book;import java.sql.Connection;
import java.util.List;/*** ClassName: BookDao* Description: books表的dao层** @author Tianjiao* @date 2021/5/28 14:26*/
public interface BookDao {/*** MethodName: getAllBook* Description: 查询所有的书籍*/public List<Book> getAllBook(Connection connection) throws Exception;
}

2.0.1 创建 BookDaoImpl

BookDaoImpl.java

package com.tian.dao.book;import com.tian.pojo.Book;
import com.tian.utils.BaseDao;import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.List;/*** ClassName: BookDaoImpl* Description: BookDao的实现类* * @author Tianjiao* @date 2021/5/28 14:27*/
public class BookDaoImpl implements BookDao {@Overridepublic List<Book> getAllBook(Connection connection) throws Exception {PreparedStatement preparedStatement = null;ResultSet rs = null;List<Book> books = new ArrayList<>();Book book = null;if (null != connection) {String sql = "select * from `books`";Object[] params = {};rs = BaseDao.executeQuery(connection, preparedStatement, rs, sql, params);int i = 0;while (rs.next()) {book = new Book();book.setInventory(rs.getInt("inventory"));book.setBookName(rs.getString("bookName"));book.setBookId(rs.getString("bookId"));book.setAuthor(rs.getString("author"));books.add(book);}BaseDao.closeResource(connection, preparedStatement, rs);}return books;}
}

2.0.3 创建 BookService


BookService.java

package com.tian.service.book;import com.tian.pojo.Book;import java.util.List;/*** ClassName: BookService* Description: Books的service层** @author Tianjiao* @date 2021/5/28 14:51*/
public interface BookService {/*** MethodName: getAllBooks* Description: 获得所有的书籍*/public List<Book> getAllBooks() throws Exception;
}

2.0.4 创建 BookServiceImpl

BookServiceImpl.java

package com.tian.service.book;import com.tian.dao.book.BookDaoImpl;
import com.tian.pojo.Book;
import com.tian.utils.BaseDao;import java.sql.Connection;
import java.util.List;/*** ClassName: BookServiceImpl* Description: BookService的实现类** @author Tianjiao* @date 2021/5/28 14:51*/
public class BookServiceImpl implements BookService {@Overridepublic List<Book> getAllBooks() throws Exception {Connection connection = BaseDao.getConnection();return new BookDaoImpl().getAllBook(connection);}
}

2.0.5 创建 AllBookServlet

AllBookServlet.jsp

package com.tian.servlet.book;import com.tian.pojo.Book;
import com.tian.service.book.BookServiceImpl;import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.List;/*** ClassName: BookServlet* Description: 查询所有书籍的请求** @author Tianjiao* @date 2021/5/29 10:30*/
public class AllBookServlet extends HttpServlet {@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) {try {List<Book> books = new BookServiceImpl().getAllBooks();if (books != null) {req.setAttribute("books", books);req.getRequestDispatcher("static/jsp/index.jsp").forward(req, resp);}} catch (Exception e) {e.printStackTrace();}}@Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp) throws EnumConstantNotPresentException {this.doGet(req, resp);}
}

2.0.6 配置 AllBookServlet

web.xml

    <servlet><servlet-name>AllBookServlet</servlet-name><servlet-class>com.tian.servlet.book.AllBookServlet</servlet-class></servlet><servlet-mapping><servlet-name>AllBookServlet</servlet-name><url-pattern>/books</url-pattern></servlet-mapping>

2.0.7 修改 LoginServlet


修改 LoginServlet 使其在通过 /books 请求进入index.jsp页面


2.0.8 启动服务器,测试



图书管理系统( ( JSP + JDBC + Servlet ) )实现-06: 查询所有书籍功能相关推荐

  1. 图书管理系统( JSP + JDBC + Servlet )实现-01: 流程分析和数据库建表阶段

    01: 流程分析和数据库建表阶段 02: 编写和配置过滤器(防止页面乱码) 03:项目搭建 & 工具类的实现 &依赖导入 04: 建立数据库的实体类(pojo) 05: 实现登录功能 ...

  2. JDBC+MYSQL图书馆,简单迷你图书管理系统练习小项目,实现查询,新增,修改,删除,退出功能。

    JDBC+MYSQL图书馆,简单迷你图书管理系统练习小项目,实现查询,新增,修改,删除,退出功能. 代码有一丢丢小多,最后有图解,讲的不对的地方希望各位大佬指出,对您有帮助的话请点个小小的赞. 题目与 ...

  3. 图书管理系统 jsp + servlet + mysql (2023)

    jsp + servlet + mysql 图书管理系统(2023) 1.系统运行环境 运行环境:Java8 + MySQL8 + Tomcat8.0 开发工具:eclipse/idea 2.系统功能 ...

  4. 五、按姓名查询的JSP+jdbc+Servlet

    因为按要求查询都是差不多一样的,所以举个栗子 详细说按姓名查询,然后其他的查询就贴代码了 ------------------------------------------------------- ...

  5. 综合学生信息管理系统(JSP+JDBC)

    原创 通过JSP+JDBC制作一个简单的操作数据库中表信息的系统. 总体界面如下,一共有5个功能块. 功能一:列出全部学生 功能二:按条件查询学生 功能三:新添加学生 功能四:按条件删除学生 功能五: ...

  6. JAVA图书管理系统(JDBC,MySQL)

    目录 一.功能流程图 二.数据库表的设计 三.代码结构 四.运行效果 五.总结 一.功能流程图 项目功能如下: 登录模块:包括登录功能(根据两种身份(管理员或者操作员)进行登录),如果没有用户信息,则 ...

  7. 图书管理系统jsp代码_【程序源代码】使用Java开发的图书管理系统

    关键字:java 管理系统  正文 | 内容 01 - [概述] 使用Java开发的图书管理系统,读者可以注册登录,登录时会判断账号类型再分别跳到各自对应的页面,读者可以查找,借阅,还书,查看历史借阅 ...

  8. JSP学生考勤管理系统考勤管理系统jsp学生迟到早退考勤查询系统(考勤管理系统源码)

    常见的Javaweb题材有 理财系统,就业管理系统,汽车租赁,简易网盘,疫情数据查看,在线招标房,屋租赁,教务管理,医院管理,餐厅收银,来访咨询,兼职论坛,桌面聊天室,酒店管理,民宿管理,车位租赁,音 ...

  9. 小程序一:利用Python编写一个简单的图书管理系统

    完成项目的流程: 想要完成某个项目基本都是按这个流程进行编写 想要实现的功能 代码的实现 class Book:def __init__(self,name,author,recommendation ...

最新文章

  1. DNC-cs6200 ospfv3
  2. 光耦p621引脚图_开关电源中光耦电路的设计与优点
  3. ib课程计算机科学内容,ib课程体系的六大课程
  4. 预告丨大型出海知识盛宴,邀您一起 enjoy !
  5. Tomcat5配置mysql4数据源
  6. 【问题】Nginx日志中request_body为空
  7. java python混合编程_python+java混合编程
  8. 软件需求分析用例图 实例简述
  9. 信号与系统学习总结 第三章 傅里叶变换
  10. android手机文件快速扫描,并归类
  11. TFN TT70网络综合分析仪性能如何
  12. 解决mathtype中集合交并运算符号太矮的问题
  13. IS-IS LSDB详解(华为设备)
  14. quick-cocos2dx中 B.super.ctor(self) 和 B.super:ctor()的区别
  15. 9 摄像头视频实时传输
  16. PM常用语看这篇就够了
  17. NUMA与英特尔Xeon处理器学习心得 转
  18. 浅析能源物联网技术在校园能耗监测系统中的应用与研究
  19. 【NOIP 2018 提高组】赛道修建
  20. 搭建自己的ngrok服务器搭建方式二

热门文章

  1. 教育在线学习系统,教育培训都能用,支持多个终端
  2. 系统架构设计师考试全程指导文摘
  3. oracle连接超时 时好时坏,关于Oracle连接超时的问题
  4. #define时,ERROE: lvalue required as left operand of assignment
  5. 新媒体培训的目的和意义体现
  6. 罗伯特议事法则--解读篇
  7. 从0开始搭建jenkin环境
  8. Jenkin发布PHP代码配置
  9. pickle.PicklingError错误 (pickle 无法保存 namedtuple)
  10. gitlab 503错误的解决方案