网络知识 娱乐 Java Web程序设计——图书管理系统

Java Web程序设计——图书管理系统

这是一个图书管理系统,都是用原生的·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