简介
随着网络时代的到来,电子信息化的飞速发展,图书馆作为一种信息资源的聚集地,图书种类的繁多,用户借阅的繁琐,包含很多的信息数据的管理,以及信息数据的交互。那么如果有一套具体的完善的图书管理系统就显得尤为重要,图书馆如果采用人工来管理书籍和借阅管理,由于资料繁多,手工处理的方式不仅工作量大,管理效率低下,也很容易因为疲劳而产生出错,更不方便读者对图书资料的查阅。为了提高图书管理的效率,本项目针对图书的管理,设计了一个面向图书的管理系统。 本系统主要有四个大的功能,对图书进行管理,对电子书的管理,留言功能,以及对管理员的管理
关键词:系统 图书管理
引言
21世纪中国图书馆所要达到的目标,是要实现中国图书馆的现代化,实现图书馆的自动化管理,并由现代化带动图书馆事业的全面繁荣。随着互联网时代的到来,1月22日下午,中国互联网络信息中心(CNNIC)在京发布了39次《中国互联网络发展状况统计报告》(以下简称为《报告》)。这是关于中国互联网市场整体发展情况的最权威报告。《报告》显示,中国网民规模达到7.31亿,手机网民达6.95亿。网络已经走进了各家各户,然而对于图书馆这一个具有庞大的信息的资料的机构,能实现高效的管理已成为必须要面对的问题。根据CNNIC的调查,截止2016年6月,我国网民仍以10-39岁群体为主,占整体的74.7%,其中20-29岁年龄段的网民占比最高,达30.4%,由此可以看出,大部分的10-39岁的人们更容易接受的是网络上的信息传递,那么不论是图书管理系统的管理者还是图书的借阅者,都更加容易接受一个电子化的管理。对待繁多的图书,有一套完整的图书管理系统,不仅仅能节省管理时间,更重要的是电子化的管理更方便统计借阅排行信息。而这个项目实现了电子化的管理,推荐书,电子书的共享,借阅书本,添加新书等等功能。实现计算机的智能化管理,以提高工作效率和经济效益。
相关技术突破
MVC设计模式
MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。MVC被独特的发展起来用于映射传统的输入、处理和输出功能在一个逻辑的图形化用户界面的结构中。
Model(模型) 是应用程序中用于处理应用程序数据逻辑的部分。通常模型对象负责在数据库中存取数据。
View(视图) 是应用程序中处理数据显示的部分。通常视图是依据模型数据创建的。
Controller(控制器) 是应用程序中处理用户交互的部分。通常控制器负责从视图读取数据,控制用户输入,并向模型发送数据。
MVC模式运行
MVC指MVC模式的某种框架,它强制性的使应用程序的输入、处理和输出分开。使用MVC应用程序被分成三个核心部件:模型、视图、控制器。它们各自处理自己的任务。最典型的MVC就是JSP + servlet + javabean的模式。然而本系统采用的是JSP+Struts2+javabean的模式,也就是说中间的控制层被Struts所代替。
开发语言
JAVA语言:JDK是Java语言的软件开发工具包(SDK),主要用于移动设备、嵌入式设备上的Java应用程序。JDK是整个Java开发的核心,它包含了Java的运行环境(JVM+Java系统类库)和Java工具。1997 年Servlet技术的产生以及紧接着JSP的产生,为Java对抗PHP,ASP等等服务器端语言带来了筹码。1998年,Sun发布了EJB1.0标准,至此J2EE平台的三个核心技术都已经出现。因此本次的毕业设计的开发选择了它。
J2EE概述
本次开发使用了JAVA EE 5,J2EE 拥有很多值得关注的,其中之一就是新的Java Standard Tag Library (JSTL) 1.2 规范。STL 1.2 的关键是统一表达式语言,它允许我们在 JavaServer Faces (JSF) 中结合使用 JSTL 的最佳特性。 Jdk使用了jdk1.8,Sort 排序,Map映射,Match匹配等都是jdk1.8的新特性。没有JDK的话,无法编译Java程序,如果想只运行Java程序,要确保已安装相应的JRE。
Struts2+Jsp+Javabean框架
Struts2是一个基于MVC设计模式的Web应用框架,它本质上相当于一个servlet,在MVC设计模式中,Struts2作为控制器(Controller)来建立模型与视图的数据交互。Struts 2是Struts的下一代产品,是在 struts 1和WebWork的技术基础上进行了合并的全新的Struts 2框架。其全新的Struts 2的体系结构与Struts 1的体系结构差别巨大。Struts 2以WebWork为核心,采用拦截器的机制来处理用户的请求,这样的设计也使得业务逻辑控制器能够与ServletAPI完全脱离开,所以Struts 2可以理解为WebWork的更新产品。虽然从Struts 1到Struts 2有着太大的变化,但是相对于WebWork,Struts 2的变化很小。
Struts2+Jsp+Javabean运行模式
当Web容器收到请求(HttpServletRequest)它将请求传递给一个标准的的过滤链包括(ActionContextCleanUp)过滤器。经过Other filters(SiteMesh ,etc),需要调用FilterDispatcher核心控制器,然后它调用ActionMapper确定请求哪个Action,ActionMapper返回一个收集Action详细信息的ActionMaping对象。FilterDispatcher将控制权委派给ActionProxy,ActionProxy调用配置管理器(ConfigurationManager) 从配置文件中读取配置信息(struts.xml),然后创建ActionInvocation对象。
ActionInvocation在调用Action之前会依次的调用所用配置拦截器(Interceptor N)一旦执行结果返回结果字符串ActionInvocation负责查找结果字符串对应的(Result)然后执行这个Result Result会调用一些模版(JSP)来呈现页面。拦截器(Interceptor N)会再被执行(顺序和Action执行之前相反)最后响应(HttpServletResponse)被返回在web.xml中配置的那些过滤器和核心控制器(FilterDispatcher)。
系统需求分析
3.1 架构说明
3.1.1 系统开发环境
系统基于Microsoft Windows 7 操作系统和mysql-installer-community-5.7.17.0版本的数据库。
系统前台使用Hbuilder_7.5.1,HBuilder是支持HTML5的WEB开发IDE。HBuilder的编写用到了java、c、Web和ruby。HBuilder本身主体是由Java编写。它基于Eclipse,所以顺其自然地兼容了Eclipse的插件。
系统服务器使用了apache-tomcat-9.0.0.M4,因为它运行时占用的系统资源小,扩展性好,支持负载平衡与邮件服务等开发应用系统常用的功能,所以我选择了tomcat服务器。
编写系统使用了eclipse-jee-neon-3-win32-x86_64,Eclipse核心很小,其它所有功能都以插件的形式附加于Eclipse核心之上。Eclipse基本内核包括:图形API (SWT/Jface), Java开发环境插件(JDT ),插件开发环境(PDE)等
3.1.2 系统软件结构
系统采用了B/S结构,MVC运行模式。此架构无须安装客户端软件,便于软件的分发和维护升级,适应了众多应用客户端分散环境下的运行和维护需求。
视图层 - View
Web 层为客户端提供对应用程序的访问。Web 层由JSP组成。Web 窗体只是用 JSP提供用户操作,而代码隐藏文件实现各种控件的事件处理。验证使用到了前台框架Bootstrap,Jquery2.1, Javascript等。
模型层 — Model
模型层封装了数据库中各个表所映射的实体类,以及连接数据库的类,jdbc等。
控制层 — Controller
控制层。应用程序中处理用户交互的部分,用户输入信息,与数据库中的数据进行对比添加,并向模型发送数据。
3.1.3 条件与限制
应用本平台必须保证电脑或其它访问本平台的软件有杀毒防毒能力,对于因客户中毒而产生的数据损失本平台不负任何责任;由于图书馆资料庞大,为了避免不是管理员的人批量删除修改图书信息,本系统采用严格的等级权限管理,管理员一旦发现丢失密码,需尽快提供相关证明交于超管进行相关帐户锁定与资料的修改。
3.2 功能分析
图书管理系统主要提供的功能如下:
进入系统:
未锁定普通管理员登录:
已锁定的普通管理员登录:
模块分析
a)图书管理
(1)添加图书:在图书馆里添加一本新的图书
(2)查看图书:可以查询所有图书信息(修改图书,删除图书等)
(3)推荐书管理:可以推荐热门书籍,也可以不推荐某些书籍
(4)借书管理:根据借书多少降序排列,可以清空借阅
b)电子书管理
(1)上传电子书:可以上传电子书,多本一起上传等
(2)查看电子书:可以下载电子书,删除电子书等
d)管理员管理
(1)修改密码:超级管理员修改普通管理员的密码
(2)解锁/锁定管理员:一些违规操作的管理员可以对其进行锁定,也可以对其解锁
(3)删除账号:可以删除普通管理员的账号,删除账号会先删除此人的所有留言。
此项目适合刚完成JavaWeb学习,可用于完成学校课程设计
毕业设计请自行加工升级
项目截图
书店首页
后台登录页面:http://localhost:8080/login
账号:a
密码:a
书店的后台图书页面:图片可以自己换(还是用的花店图片)
图书管理
导入成Excel
项目部署视频:https://www.bilibili.com/video/av76214427