这是一个图书管理系统,都是用原生的·Java Web写的,前后端代码都是自己写的。第一次写博客希望大家能够支持。

项目结构图览

采用的工具与技术

前端页面设计:html+css

后端技术:jsp+servlet+javaBean+jdbc+dao

服务器版本:Tomcat8.5

数据库:Mysql数据库

开发工具:Eclipse、Chorme、Mysql、Navicat Premium 15

图书管理系统数据库设计

1、user(用户信息表)字段:username(用户名(主键))password(密码) sex(性别)

2、administrator(管理员信息表)字段:username(用户名(主键)) password(密码)sex(性别)

3、book(图书信息表) 字段:number(图书编号(主键)) bookname(书名) writer(作者) price(价格) typ(类型) floor(位置) condi(状态)

4、borrowbook(借阅信息表) 字段:id (主键) number(图书编号) bookname(书名) writer(作者) price(价格) typ(类型) floor(位置) name(借书人用户名) ftime(借书时间) ltime(还书时间) condi(状态)

5、amessage(管理员下达通知信息表) 字段:id(主键) content(内容) time(时间)

6、umessage(用户反馈信息表) 字段:id (主键) name(用户名) content(内容) time(时间)

7、message(管理员给用户留言信息表) 字段:id(主键) content(内容) time(时间) name(用户名)

数据库逻辑结构

(1) user(用户信息表)储存用户基本信息

(2)administrator(管理员信息表)储存管理员基本信息

(3)book(图书信息表)储存图书的基本信息,其中condi字段用来储存图书的状态即是否被借,默认为,如果被借走则为,被归还则为

(4)borrowbook(借阅信息表)用来储存被借图书的信息,其中ftime (被借时间) ltime(如果未归还则是最晚还书时间(最晚还书时间为借书时间的后三个月),如果归还则是归还时间) condi(被借图书状态,即是否归还,默认为,如果归还则为)

(5)amessage(管理员下达通知信息表)用来储存管理员下达的通知(所有用户都可以在收件箱里看到)

(6)umessage(用户反馈信息表)用来储存用户反馈的信息

(7)message(管理员给用户留言信息表)用来储存管理员给用户的留言

系统实现

(1)登入、注册、退出模块

功能:实现用户和管理员的登录和退出以及用户的注册

视图层:B_login.jsp(登入页面) B_regitesr.jsp(注册页面)

  1. com.book.bean: B_user.java(包装用户基本信息类)B_administrator.java(包装管理员基本信息类)
  2. com.book.dao: B_adiministratordao.java B_userdao.java()

包含U_adduser(添加用户),U_finduser(查找用户),A_adduser(添加管理员),A_finduser(查找管理员)

  1. com.book.dao.impl: B_administratorimpl.java B_userimpl.java(实现方法的接口)
  2. com.book.servlet B_logionservlet.java B_registerservlet.java B_EncodingFilter.java(编码过滤器) B_exitservlet.java(退出,销毁session)

(2)用户查询图书模块

功能:查询图书、借阅图书

1、视图层:B_referbook.jsp(查找图书) B_referbook1.jsp(借阅图书)

2、com.book.bean: B_borrowbook.java(包装借阅记录的类)

3、com.book.dao: B_borrowbookdao.java borrow(借阅图书方法)

4、com.book.dao.impl B_borrowbookimpl.java (实现借阅功能的接口)

5、com.book.servlet B_borrowbookservlet.java

(3)用户借阅记录模块

功能:查看借阅记录、还书

  1. 视图层:B_u.record.jsp
  2. com.book.bean: B_borrowbook.java包装借阅记录的类)
  3. com.book.dao: B_returnbookdao.java returnbook(还书方法)
  4. com.book.dao.impl: B_returnbookimpl.java (实现还书功能的接口)
  5. com.book.servlet: B_returnbookservlet.java

(4)用户收件箱模块

功能:可以接收来自管理员的信息

  1. 视图层:B_u.inbox.jsp

(5)系统反馈模块

功能:可以向管理员反馈系统问题

  1. 视图层: B_u.feedback.jsp
  2. com.book.bean: B_umessage.java(包装用户反馈的信息的类)
  3. com.book.dao: B_umessagedao.java addcontent(提交留言的方法)
  4. com.book.dao.impl: B_umessageimpl.java (实现提交留言功能的接口)
  5. com.book.servlet: B_umessageservlet.java

(6)设置模块

功能:可以修改自己的密码

  1. 视图层:B_u.set.jsp(用户设置) B_a.set.jsp(管理员设置)
  2. com.book.bean: B_user.java(包装用户信息的类)B_administrator.java(包装管理员信息类)
  3. com.book.dao: B_usetdao.java B_asetdao.java u_findpass、a_findpass(查找原密码) u_mod、a_mod(修改密码)
  4. com.book.dao.impl: B_usetimpl.java (实现u_findpass和u_mod方法) B_asetimpl.java (实现a_findpass和a_mod方法)
  5. com.book.servlet: B_setservlet.java

(7)管理员用户管理模块

功能:实现查看用户借阅记录,删除用户,给用户留言功能

  1. 视图层:B_u.control.jsp(主页面) B_a.check.jsp(查看借阅记录) B_a.mass.jsp(留言页面)
  2. com.book.bean: B_mass.java(包装管理员向用户留言的类)B_user.java(包装用户信息类)
  3. com.book.dao: B_massdao.java addmass(添加留言) B_udeletedao.java udelete(删除用户方法)
  4. com.book.dao.impl: B_massimpl.java (实现添加留言的方法)B_udeleteimpl.java(实现删除用户功能,只有当用户借阅的图书全部归还才能删除)
  5. com.book.servlet: B_massservlet.java B_udeleteservlet.java

(8)管理员管理图书模块

功能:添加图书、查看所有图书、查看图书详情

  1. 视图层: B_bookadmi.jsp(添加图书) B_bookadmi1.jsp B_bookadmi2.jsp (查看图书)B_bookadmi2.jsp(查看图书详情)
  2. com.book.bean: B_book.java(包装图书信息类)
  3. com.book.dao: B_bookdao.java addbook(添加图书)
  4. com.book.dao.impl: B_bookimpl.java (实现添加图书功能)
  5. com.book.servlet: B_bookservlet.java

(9)管理员下达通知模块

功能:可以向所有用户下达通知

  1. 视图层:B_a.feedback.jsp
  2. com.book.bean: B_amessage.java(包装下达通知信息类)
  3. com.book.dao: B_amessagedao.java addcontent(添加信息)
  4. com.book.dao.impl: B_amessageimpl.java (实现addcontent功能)
  5. com.book.servlet: B_amessageservlet.java

(10)用户反馈模块

功能:查看用户反馈的内容、删除反馈内容

  1. 视图层: B_a.inbox.jsp
  2. com.book.bean: B_ainbox.java(包装反馈信息的ID)
  3. com.book.dao: B_deainboxdao.java deleteinbox(删除用户反馈信息)
  4. com.book.dao.impl:B_deleteinbox.java(实现删除信息功能)
  5. com.book.servlet: B_deleteinboxservlet.java

代码太长这里就不展示了,可以自己去百度网盘把项目下载下来然后导入

链接:https://pan.baidu.com/s/1ihijAysY47jL5957a10Zbg
提取码:d47z