本科毕业设计说明书-图书管理信息系统的设计与实现_第1页
本科毕业设计说明书-图书管理信息系统的设计与实现_第2页
本科毕业设计说明书-图书管理信息系统的设计与实现_第3页
本科毕业设计说明书-图书管理信息系统的设计与实现_第4页
本科毕业设计说明书-图书管理信息系统的设计与实现_第5页
已阅读5页,还剩44页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

本科毕业设计说明书图书管理信息系统的设计与实现DESIGNANDIMPLEMENTATIONOFTHELIBRARYMANAGEMENTINFORMATIONSYSTEM学院(部):理学院专业班级:信息与计算科学(二)班学生姓名:指导教师:2015年5月10日i图书管理信息系统的设计与实现摘要本系统是基于JAVA的一个WEB项目,旨在方便处理图书馆存在的借阅登记问题。整个WEB项目使用了Struts2框架,使用传统的JDBC连接MYSQL数据库,项目部署在tomcat服务器。并用不同的数据测试,完成了图书管理信息系统的设计与实现。本系统分为以下几个功能模块:图书管理模块、读者管理模块、借阅管理模块和其他功能模块。本系统主要应用场景是在图书馆中线下借阅,线上管理。读者在图书馆中借阅了一本图书之后,包括图书的信息,借阅人的信息,及何时归还等信息的处理都是在本系统中完成的。具体的操作及详细的介绍会在本说明书中详细说明。ii关键词:图书管理信息系统,借阅管理,线上管理DESIGNANDIMPLEMENTATIONOFTHELIBRARYMANAGEMENTINFORMATIONSYSTEMABSTRACTThissystemisaWEBprojectbasedonJAVA,inordertofacilitatetheprocessingofloanregistrationproblemsexistinginthelibrary.TheWEBprojectusestheStruts2framework,theuseoftraditionalJDBCtoconnectMYSQLdatabase,theTomcatserverinthedeploymentoftheproject.Testandusedifferentdata,completethedesignandimplementationofthelibrarymanagementinformationsystem.Thissystemisdividedintothefollowingmodules:librarymanagementmodule,readermanagementmodule,loanmanagementiiimoduleandotherfunctionalmodule.Thissystemismainlyusedinthelibrarytoborrowsceneline,linemanagement.Afterareadertoborrowbooksinthelibrary,includinglibraryinformation,borrowinformationprocessingandotherinformationwhenitisdoneinthesystemof.Thespecificoperationanddetailedintroductionaredetailedinthespecification.KEYWORDS:Thelibrarymanagementinformationsystem,loanmanagement,linemanagementI目录摘要.IABSTRACT.II第1章绪论.11.1课题背景.11.2现状及发展前景.11.3课题设计目标.2第2章相关技术简介.32.1Mysql数据库.32.2Tomcat服务器.42.3MVC设计模式.52.4Struts2框架.52.5B/S结构.6第3章系统需求和可行性分析.73.1系统概述.73.2系统需求分析.73.2.1功能需求分析.73.2.2数据需求分析.83.3可行性分析.8第4章系统数据库设计.94.1数据表概要.94.2数据库分析.94.3数据库逻辑结构.10II第5章系统详细设计.145.1系统体系结构设计.145.2系统功能模块设计.155.3系统流程设计.15第6章系统实现.206.1网站首页设计与实现.206.1.1网站首页效果图.代码实现.206.2读者管理模块(以新增为例).216.2.1读者管理模块效果图.216.3图书管理模块(以新增为例).236.3.1图书管理模块效果图.236.3.2后台主要实现代码.246.4图书借还模块.256.4.1图书借还效果图.256.4.2后台主要实现代码.24第7章论文总结.29参考文献.30致谢.31III1第1章绪论1.1课题背景随着科学技术的飞速发展,当今世界的各行各业几乎都已经离不开互联网科技。当今时代是高速发展的信息时代。在各行各业中离不开对信息的处理,这正是计算机被广泛应用于信息管理系统的环境。使用计算机进行信息管理是一个行业现代化的标志。而对于图书馆管理这个行业,一直以来人们都是以传统的人工管理方式来管理整个图书馆的庞大的借阅业务,无疑增加了图书馆管理人员的工作量及图书馆本身的运营成本。而且人工管理效率底下,而且容易出错。在计算机没有应用到图书管理信息系统之前,整个图书馆的运营需要给借阅人发借阅证,借阅人借阅图书之后需要手工登记借阅人信息及借阅的图书相关信息。还书时,需要去登记处手工查找相关借阅信息,并补充相应的还书信息。整个过程过度依赖人工,操作繁琐、工作量大、效率底下且出错率高。为了解决这些问题,图书管理信息系统顺势而生。将所有人工的手动工作转移到线上进行,无疑大大简化了工作流程,缩小了工作量。使图书馆行业步入信息化和现代化。1.2现状及发展前景信息技术的飞速发展使得图书馆管理发生了本质的飞跃,传统的集成系统已经越来越难胜任图书馆管理的工作了。传统的人工操作已经满足不了图书馆管理的需求。比如大量图书文献不能得到及时整理,借阅时查找困难,大量借阅记录发生错误记录等等。图书馆管理的现状堪忧,所以拥有一个优良的图书馆管理系统,对于图书馆的管理是极其重要的。这是时代发展的必然选择。我校也是一所正在高速发展的高校,图书馆的规模和藏书量逐年提高,大量学生的借阅信息难以管理,改变图书馆管理方式已经迫在眉睫。本系统大大改善了传统的人工管理模式的弊端。效果立竿见影,已经逐步2取代图书馆传统的管理模式,如果能不断完善,相信会帮助越来越多有类似困扰的图书馆。1.3课题设计目标本设计系统尝试用一个JAVAWEB搭建一个图书管理信息系统。旨在帮助图书馆借阅管理人员摆脱繁重的日常工作,规避人工管理工作中的一些不足,比如操作繁琐、工作量大、效率底下且出错率高。将整个借阅登记及还书登记处理的过程放到系统中实现。整个管理模式为线下借阅,线上管理。本系统是在eclipse集成开发工具中开发完成的,基于JAVA开发语言,是一个典型的WEB项目。页面的请求处理使用了Struts2框架,降低了整个程序的复杂程度,利用了传统的JDBC技术连接Mysql数据库。是一个轻量级的应用平台。有效的提高了程序的运行效率。其主要模块分为一下几个:系统设置模块,读者管理模块,图书管理模块,图书借还模块,系统查询模块和其他模块。读者在线下借阅图书时,图书管理员只需在本系统中的图书借还模块中登记一笔记录即可;若图书馆新增了图书,只需在图书管理模块中新增一笔记录即可;如图书馆新增了读者,只需在读者管理模块中新增一笔记录即可。另外有一些个性功能比如可以控制读者的级别以保证读者类型不一样而能借阅的书的数量也不一样,包括对操作人员的权限控制等等。整个操作都放在线上进行,既方便又安全。3第2章相关技术简介2.1Mysql数据库数据库(DB,DataBase)是长期存储在计算机内有组织、大量的、共享的数据集合。是一个按数据结构存储和管理数据的计算机软件系统。数据库按照数据结构可分为网状型数据库、层次型数据库和关系型数据库。而应用最广泛的就是关系型数据库。关系型数据库是一种建立在关系模型基础上的数据库,借助于集合代数等数学概率和方法处理数据库的数据。目前市场上流行的关系数据库主要有:DB2:是IBM公司的关系型数据库管理系统Oracle:是Oracle公司的关系型数据库管理系统SQLServer:是Microsoft公司的关系型数据库管理系统Mysql:是瑞典MySqlAB公司的关系型数据库管理系统本系统所用的Mysql数据库是一个中、小型关系型数据库管理系统,开发者为瑞典MySqlAB公司的关系型数据库管理系统,目前属于Oracle公司。目前MySql分为免费版和商业版。本系统使用为MySql免费版。由于MySql数据库体积小、速度快、总体拥有成本低、尤其是开放源码这一特点,许多中小型网站为了降低网站整天开发成本,优先选择MySql作为网站数据库。当然与其他的大型的数据库例如Oracle、DB2、SQLServer等相比,MySql自有它的不足之处,如规模小、功能有限等,但是这丝毫没有减少它的欢迎程4度。对于一般的个人使用者和中小型企业来说,MySql提供的功能已经绰绰有余,而且由于MySql是开放源码软件,因此可以大大降低总体拥有成本。目前Internet上流行的网站架构方式是LAMP(Linux+Apache+MySql+PHP),即使用Linux作为操作系统,Apache作为Web服务器,MySql作为数据库,PHP作为服务器端脚本解释器。由于这四个软件都是免费或者开放源码软件,因此使用这种方式可以不花一分钱可以建立起一个稳定、免费的网站系统。由于技术或者其他客观因素的限制,本系统中使用的是WAMJ(Windows+Apache+MySql+Jsp)网站架构方式。Windows作为操作系统、Tomcat作为网站服务器、MySql作为数据库、Jsp作为服务器端脚本解释器。2.2Tomcat服务器基于B/S开发架构开发的软件可以称之为Web应用。Web的英文本意即为网页的意思。它用于表示Internet主机上供外界访问的资源以及超链接组成的链表。而Internet上供外界访问的Web资源分为动态资源和静态资源。静态Web资源指Web页面中供人们浏览的数据始终是不变的,静态Web资源开发技术常用的html技术。而动态Web指Web页面中供人们浏览的数据是程序产生的,不同的时间不同的条件下访问展示的内容可能各不相同。常用的动态Web资源开发技术:JSP/Servlet、ASP、PHP等。在JavaWeb项目中,必须需要一台服务器,然后在Web服务器中开发相应的web资源,供用户使用浏览器访问。目前常用的WEB服务器有:WebLogic:是BEA公司的产品,是目前应用最广泛的Web服务器。WebSphere:是IBM公司的产品,支持JavaEE规范。Tomcat:是Apache开发的开源的项目。Tomcat服务器相对与其他的大型服务器如WebLogic、WebSphere来说,其最大的优点就是体积小、速度快、总体拥有成本低、尤其是开放源码这一特点,在小型的应用系统或者有特殊需要的系统中,大多选择Tomcat作为服务器。Tomcat是sun官方推荐的标准的Servlet和Jsp容器。在Tomcat官网即可免5费下载,Windows下载好压缩包解压完成即可使用。其目录结构如下:bin:存放一下执行文件conf:存放tomcat服务器的配置文件lib:存放tomcat所依赖的jar文件logs:存放日志文件temp:存放临时文件webapps:存放所有的web应用程序(web资源)work:tomcat的工作目录当我们把自己的Web项目部署到Tomcat服务器上时,实际上是做了以下操作:将项目中WebRoot(WebContent)目录下面的文件复制一份到Tomcat的webapps下,并将整个文件夹命名为项目名即完成部署。2.3MVC设计模式MVC(ModelViewController)设计模式是一种程序的设计思想。是模型(model)视图(view)控制器(controller)的缩写,一种软件设计典范。MVC将应用程序的数据输入、数据处理和数据输出分开来了。MVC设计模式中应用程序被分为三个核心组件:模型、控制器和视图。最典型的MVC模式就是:JavaBean+Jsp+Servlet的模式。这地方我谈谈自己的理解。举一个简单的例子,比如说人们使用网易邮箱时第一步打开浏览器,输入网易邮箱的地址,这时候用户能看到网易邮箱的登录界面。这个界面的使命就是展示给用户看,指引用户进行下一步操作,您需要输入用户名,密码和验证码来进行登录操作。当用户在输入框中输入相应的信息只有,点击了登录按钮,为什么用户名密码匹配才能登录进去,不正确就会登不上去而且给出提示呢?这背后肯定有逻辑处理,我们暂且粗略的估计一下网易邮箱的后台做了什么。6第一步肯定是要拿到用户输入的用户名和密码值(其他验证项暂且忽略),拿到值之后要判断这个用户名和密码的搭配是不是对的。怎么判断?肯定有一个地方有所有的用户名和密码,我去那里面找,有就是对的,没有就是错的。那个地方叫做数据库。查找完成之后,做一个判断。如果用户名和密码是匹配的,表示登录成功,下一步我就跳转到首页界面。如果失败就给出提示。一个请求和响应的过程大致就是这样。在这个过程中我们可以发现有三个东西是必不可少的。页面、数据库和处理逻辑。在JavaWeb中,引入了JavaBean的概率,将每一个用户封装成一个对象来处理,本质上还是对一条数据进行处理。而处理逻辑一般是Servlet来完成的,在传统的JavaWeb中,上面案例中说的登录操作很可能是提交一个表单给Servlet来处理。而页面的展示则是右Jsp来担任的。MVC设计模式在某种意义上可以和页面、数据库和处理逻辑划等号。但是他们的本质是不一样的。MVC是一种处理问题的思想。哪怕我在JavaWeb中没有用JavaBean+Jsp+Servlet这种模式,把所有的处理逻辑全部糅合到Jsp中,在技术上也是可以实现的。这种情况也是满足MVC设计思想的。因为你毕竟还是可以化为出模型、视图和控制器。哪怕没有具体的表现形式。2.4Struts2框架说到Struts2框架不得不提到这个框架的前身Struts1和WebWork。Struts2是在Struts1和WebWork的技术基础上进行合并的全新的框架。全新的Struts2的体系结构和Struts1的体系结构差别巨大。Struts2框架的优点如下:以前的基于JSP/SERVLET开发的模式有一些自己的局限性,并且很麻烦,在传统的JSP/SERVLET处理Request/Response处理机制中,每一个Request需要调用一个Servlet来处理请求包括请求转发和页面跳转,这种方式比较笨重,每一个请求都需要写一个Servlet来处理。而在WEB项目中对于请求的处理非常多,无疑使得整个项目的代码量和代码的重复率非常高。为了解决JSP/SERVLET这种处理机制的不足之处,Apache开发的Struts1框架应运而生。但是Struts1框架仍然存在很多问题,而WebWork很好的解决了Struts1的问题,随即Apache将Struts1和WebWork进行了合并,诞生了Struts2框架。Struts2和WebWork同为服务于WEB的一种MVC框架。7Struts2以WebWork为核心,采用拦截器的机制,来处理用户的请求,这样的设计能够使得业务逻辑控制器能够与ServletAPI完全脱离开。Struts2框架本身是基于过滤器机制的一个框架,其本质是一个过滤器。整个Struts2框架需要程序员编写的只有Action处理类,需要配置的只有struts.xml文件,最后只需要在web.xml中注册并使用struts的过滤器即可。在Action类中excute()方法(缺省为excute方法,可以自定义),进行Request的处理,并且返回一个值,在struts.xml文件中配置哪种请求找哪个Action类,通过读取该类的excute()方法的返回值来确定该跳转到哪个jsp界面。个人理解Struts2框架封装了JSP/SERVLET的整个处理机制,使得整个项目更加精简,大大降低了开发过程的工作量。2.5B/S结构B/S结构(BrowserServer结构)结构即浏览器/服务器结构。基于B/S架构开发的应用不需要用户安装客户端,只需要一个浏览器即可使用。举个例子,就像网页游戏一样,打开网页就能玩。B/S架构下的应用是基于浏览器运行的。B/S结构最大的优势就是客户端免安装,适用于用户群庞大,或用户需求经常发生改变的情况。相对与C/S(Client/Server)结构来说,B/S结构统一了客户端,将系统的核心功能集中在服务器上,简化了应用的开发,维护和使用。C/S程序由于整体性,必须整体考察,处理出现的问题以及系统升级,升级难,可能是再做一个全新的系统。B/S构件组成,方面构件个别的更换,实现系统的无缝升级,系统维护开销减到最小,用户从网上自己下载安装就可以实现升级。由于现在Internet的发展及网络带宽的限制,B/S的结构也有一定的局限性,比如必须需要良好的网络。第3章系统需求和可行性分析3.1系统概述图书管理信息系统是图书馆管理现代化、信息化重要的一个步骤。图书管理信息系统就是要为系统设置模块、图书馆的图书管理、读者管理包括借阅流程管理提供线上解决方案,省去了大量的人力、物力,提高了管理者的工作效8率,降低了工作的出错率。同时图书管理信息系统大大提高了图书馆相关信息的安全性和便捷性。本系统的功能模块主要分为图书管理模块、读者管理模块、借阅管理模块、系统查询模块和其他功能模块。一个新读者在图书馆借阅图书时,首先要在读者管理模块中新增一条读者信息,然后在借阅管理模块中登记一条记录。当然读者所借阅的图书是图书管理模块中已经登记过的。读者归还图书时也应当在借阅管理模块中新建一条记录。整个借阅流程和图书馆图书及读者的管理是可以完全实现线上管理的。3.2系统需求分析本系统由于是一个线上管理系统,因此不涉及读者登录的概念。本系统的用户为管理者,但是对于管理者本系统做了权限控制。比如有些用户只有图书管理和读者管理的权限,有些用户只有借阅管理的权限,有些用户只有查询的权限等等。本系统设置了一个超级用户,拥有最大权限,可以控制其他用户的权限。超级管理员用户名:admin,密码:admin。3.2.1功能需求分析以超级管理员为例。其他用户可参照超级管理员用户根据所拥有的权限得到相应的功能需求分析结果。超级管理员应有一下功能:1)管理员登录;2)系统设置:图书书架管理,其他用户权限管理等;3)读者管理:读者管理,读者类型及借阅数量设置等,可新增读者类型,并控制不同读者能借的图书的数量也不同;4)图书管理:图书管理,图书类型及借阅期限设置等,可新增图书类型,并控制不同图书能够借出的时间也不同;5)图书借还:图书借阅,图书归还等;6)系统查询:图书查询,借阅记录查询,借阅到期提醒等;97)更改口令:可更改用户密码;8)退出系统;3.2.2数据需求分析大致有以下几种数据:1)管理员信息:用户名,密码;2)图书信息:条形码,图书名称,图书类型(取图书分类表数据),作者,译者,出版社,价格,页码,书架(取图书书架表)等;3)图书分类信息:图书分类名称,可借出的天数。4)读者信息:姓名,性别,条形码,读者类型(取读者类型表数据),职业,出生日期,有效证件,证件号码,电话,email,备注等;5)读者类型信息:读者类型名称,可借阅的本数;6)借阅信息:读者ID,图书ID,借阅时间,应当归还时间,是否归还,操作人等;7)归还信息:读者ID,图书ID,归还时间,操作人等;8)权限信息:用户ID,系统设置权限,读者管理权限,图书管理权限,图书借还权限,系统查询权限等。3.3可行性分析1)通过需求分析,我们可以初步了解本系统大致的功能模块及系统框架。为了应用开发过程中能够顺利进行,有必要进行可行性分析。对本系统的可行性分析主要体现在以下几个方面:2)技术可行性:本系统是一个采用eclipse开发工具开发,基于Java语言,使用Mysql数据库的JavaWeb项目,应用的发布使用Tomcat服务器,操作简单,技术上完全可行。103)经济可行性:Mysql数据库及Tomcat服务器都是免费的,系统开发和维护不需要很大的投入,经济上可行。4)操作可行性:在设计本系统之处,充分考虑吧到使用者的操作习惯。本系统可以基于Windows系统运行,操作简单方便。操作上可行。第4章系统数据库设计4.1数据表概要系统用户名为root,数据库名为bookmanager,所用驱动包为com.mysql.jdbc.Driver。其中主要包含了9张表:书架分类信息表,图书信息表,图书分类表,图书借阅表,图书归还表,管理员信息表,读者表,读者类型表,管理员权限表。4.2数据库分析通过数据需求分析,可以得出图书管理信息系统有以下几个实体:管理员、读者、图书。(1)实体图管理员:管理员属性有用户名、密码。图4-1管理员实体图图书:图书属性有条形码、类型、名称、作者、译者、所属书架、出版社、管理员密码密码11页码、价格等。图4-2图书实体图读者:读者属性有条形码、姓名、性别、职业、读者类型、生日、联系号码、电子邮箱、证件类型及证件号、备注等。所属书架作者图书条形码页码价格出版社译者类型名称备注证件号读者条形码职业生日联系号码电子邮箱性别姓名类型12图4-3读者实体图(2)ER图管理员密码账号管理员权限系统设置权限拥有系统设置权限系统设置权限系统设置权限系统设置权限1113图4-4ER图读者图书属于归还标记归还图书类型属于借阅操作人操作人借阅日期应还日期读者类型归还日期n1nnmmm1144.3数据库逻辑结构通过对图书管理信息系统的分析可知,该系统主要需要包含以下数据:(1)管理员表:表4-1如下所示。表4-1管理员表字段名数据类型长度是否主键备注IDint10Y自动编号50namevarchar30用户登陆账号pwdvarchar30用户登陆密码(2)管理员权限表:表4-2如下所示。表4-2管理员权限表字段名数据类型长度是否主键备注IDint10Y管理员IDsyssetint1系统设置权限readersetint1读者管理权限booksetint1图书管理权限15borrowbackint1借阅归还权限sysqueryint1系统查询权限(3)图书信息表:表4-3如下所示。表4-3图书信息表字段名数据类型长度是否主键备注IDint10Y自动编号barcodevarchar30条形码booknamevarchar70图书名称typeidint10图书类型IDauthorvarchar30作者translatorvarchar30译者ISBNvarchar20出版社pricefloat8价格pageint10页码bookcaseint10所属书架IDinTimedate录入时间operatorvarchar30操作者16(4)图书类型表:表4-4如下所示。表4-4图书类型表字段名数据类型长度是否主键备注IDint10Y自动编号typenamevarchar30图书类型名称daysint10可借阅天数(5)读者信息表:表4-5如下所示。表4-5读者信息表字段名数据类型长度是否主键备注IDint10Y自动编号namevarchar20姓名sexvarchar4性别barcodevarchar30条形码vocationvarchar50职业typeidint10读者类型IDbirthdaydate生日17paperTypevarchar10证件类型paperNOvarchar20证件号码telvarchar20联系电话emailvarchar100电子邮箱createDatedate录入时间operatorvarchar30录入者remarktext备注(6)读者类型表表4-6如下所示。表4-6读者类型表字段名数据类型长度是否主键备注IDint10Y自动编号namevarchar50读者类型名称numberint4可借阅本数(7)借阅信息表表4-7如下所示。18表4-7借阅信息表字段名数据类型长度是否主键备注IDint10Y自动编号readeridint10读者IDbookidint10图书IDborrowTimedate借阅日期backTimedate应还日期operatorvarchar30操作人ifbackint1是否归还标志位(8)归还信息表表4-8如下所示。表4-8归还信息表字段名数据类型长度是否主键备注IDint10Y自动编号readeridint10读者IDbookidint10图书IDbackTimedate归还时间operatorvarchar30操作人19第5章系统详细设计5.1系统体系结构设计本系统以BS模式为架构,即浏览器/服务器架构,表现层、逻辑处理层和数据层构成了整个系统的三层架构:图5-1B/S架构图应用中间层一般又分为业务逻辑层、数据访问层和数据模型层,B/S/架构细分化出下图的三层结构软件模型:应用浏览器界面应用中间层(组件层)数据库(服务器)用户界面数据模型数据访问业务逻辑数据库(服务器)20图5-2三层结构软件模型图5.2系统功能模块设计根据功能需求分析,可以将图书管理信息系统大致分为以下几个功能模块:系统设置模块、图书管理模块、读者管理模块、借阅管理模块、系统查询模块和其他功能模块。展示各个功能模块的具体功能的系统功能结构图如下:图书管理信息系统系统设置模块系统查询模块读者管理模块图书管理模块借阅管理模块其他功能模块图书馆基本信息管理员权限管理图书书架设置图书管理读者管理读者类型管理图书类型管理图书借阅图书归还借阅到期提醒借阅记录查询图书查询退出系统更改口令21图5-3系统结构功能图5.3系统流程设计由于本系统的应用场景是图书馆线下借阅线上借阅的情景,因此不存在读者可以登录本系统的情况,但是针对有不同分工的图书馆管理人员,本系统做了控制权限的处理,以保证系统的安全性。用户登录时先要做登录校验,不成功给出提示。登录成功之后要进行权限验证,没有权限部分功能模块不予显示。读者在线下借阅图书时,首先管理员需要登录本系统,进行借阅登记,考虑到两种特殊情况:1)该读者如果没有权限在本图书馆借阅图书,本系统设置读者管理模块,如果允许借阅,则需要在读者管理系统中添加一条记录。2)该读者借阅的图书必须先在图书管理信息系统的图书管理模块中先添加22记录,否则无法完成借阅。本系统流程可以主要从以下几个方面来描述:登录流程、图书管理流程、读者管理流程和借还流程等。登录功能主要包括以下两个功能点:)判断用户名和密码是否匹配;)判断用户的权限,以显示不同的功能模块;登录流程图如下所示:Y图5-4登录功能流程图用户登录登录验证管理系统主界面相关权限验证23图书管理流程主要的功能点包括:1)图书管理:包括新增、删除、修改的功能;2)图书类型管理:包括新增、删除、修改的功能;图书管理流程图如下所示:图书管理新增图书修改图书类型修改图书删除图书删除图书类型新增图书类型是否成功是否成功是否成功是否成功是否成功是否成功24图5-5图书管理流程图读者管理流程主要的功能点包括:1)读者管理:包括新增、删除、修改的功能;2)读者类型管理:包括新增、删除、修改的功能;读者管理流程图如下所示:成功提示失败提示成功提示成功提示失败提示成功提示失败提示失败提示成功提示失败提示失败提示成功提示读者管理25图5-6读者管理流程图借还管理流程主要的功能点包括:新增读者修改读者类型修改读者删除读者删除读者类型新增读者类型是否成功是否成功是否成功是否成功是否成功是否成功成功提示失败提示成功提示成功提示失败提示成功提示失败提示失败提示成功提示失败提示失败提示成功提示261)图书借阅管理;2)图书归还管理:读者管理流程图如下所示:图5-7借还管理流程图借还管理借阅管理录入图书条形码或名称、读者条形码是否存在是否查过可借阅数量借阅成功归还管理录入图书条形码或名称、读者条形码是否存在是否查过可借阅天数归还成功归还失败借阅失败27第6章系统实现6.1网站首页设计与实现6.1.1网站首页效果图图6-2读者管理页面6.1.2代码实现首页的图书借阅排行功能是JSP调用了后台的JAVA类BorrowDAO中的bookBorrowSort()方法后遍历集合显示出来的。该方法代码为:publicCollectionbookBorrowSort()28Stringsql=select*from(SELECTbookid,count(bookid)asdegreeFROMtb_borrowgroupbybookid)asborrjoin(selectb.*,asbookcaseName,p.pubname,t.typenamefromtb_bookinfobleftjointb_bookcaseconb.bookcase=c.idjointb_publishingponb.ISBN=p.ISBNjointb_booktypetonb.typeid=t.idwhereb.del=0)asbookonborr.bookid=book.idorderbyborr.degreedesclimit10;Collectioncoll=newArrayList();BorrowFormform=null;ResultSetrs=conn.executeQuery(sql);trywhile(rs.next()form=newBorrowForm();form.setBookId(rs.getInt(1);form.setDegree(rs.getInt(2);form.setBookBarcode(rs.getString(3);form.setBookName(rs.getString(4);form.setAuthor(rs.getString(6);form.setPrice(Float.valueOf(rs.getString(9);form.setBookcaseName(rs.getString(16);form.setPubName(rs.getString(17);form.setBookType(rs.getString(18);coll.add(form);System.out.print(RS:+rs.getString(4);catch(SQLExceptionex)29System.out.println(ex.getMessage();conn.close();returncoll;6.2读者管理模块(以新增为例)6.2.1读者管理模块效果图图6-2读者管理页面30图6-3添加读者页面6.2.2后台代码实现jsp:Action:/*添加读者信息*/privateActionForwardreaderAdd(ActionMappingmapping,ActionFormform,HttpServletRequestrequest,HttpServletResponseresponse)ReaderFormreaderForm=(ReaderForm)form;readerForm.setName(readerForm.getName();readerForm.setSex(readerForm.getSex();31readerForm.setBarcode(readerForm.getBarcode();readerForm.setVocation(readerForm.getVocation();readerForm.setBirthday(readerForm.getBirthday();readerForm.setPaperType(readerForm.getPaperType();readerForm.setPaperNO(readerForm.getPaperNO();readerForm.setTel(readerForm.getTel();readerForm.setEmail(readerForm.getEmail();/获取系统日期Datedate1=newDate();java.sql.Datedate=newjava.sql.Date(date1.getTime();readerForm.setCreateDate(date.toString();readerForm.setOperator(readerForm.getOperator();readerForm.setRemark(readerForm.getRemark();readerForm.setTypeid(readerForm.getTypeid();inta=readerDAO.insert(readerForm);if(a=0)request.setAttribute(error,读者信息添加失败!);returnmapping.findForward(error);elseif(a=2)request.setAttribute(error,该读者信息已经添加!);returnmapping.findForward(error);elsereturnmapping.findForward(readerAdd);326.3图书管理模块(以新增为例)6.3.1图书管理模块效果图图6-4图书管理页面33图6-5添加图书页面6.3.2后台主要实现代码jsp:Action:/*添加图书信息*/privateActionForwardbookAdd(ActionMappingmapping,ActionFormform,HttpServletRequestrequest,HttpServletResponseresponse)BookFormbookForm=(BookForm)form;bookForm.setBarcode(bookForm.getBarcode();bookForm.setBookName(bookForm.getBookName();bookForm.setTypeId(bookForm.getTypeId();34bookForm.setAuthor(bookForm.getAuthor();bookForm.setTranslator(bookForm.getTranslator();bookForm.setIsbn(bookForm.getIsbn();bookForm.setPrice(bookForm.getPrice();bookForm.setPage(bookForm.getPage();bookForm.setBookcaseid(bookForm.getBookcaseid();/获取系统日期Datedate1=newDate();java.sql.Datedate=newjava.sql.Date(date1.getTime();bookForm.setInTime(date.toString();bookForm.setOperator(bookForm.getOperator();inta=bookDAO.insert(bookForm);if(a=1)returnmapping.findForward(bookAdd);elseif(a=2)request.setAttribute(error,该图书信息已经添加!);returnmapping.findForward(error);elserequest.setAttribute(error,图书信息添加失败!);returnmapping.findForward(error);356.4图书借还模块6.4.1图书借还效果图图6-6图书借阅页面图6-7图书归还页面366.4.2后台主要实现代码jsp:Action:/*图书借阅*/privateActionForwardbookborrow(ActionMappingmapping,ActionFormform,HttpServletRequestrequest,HttpServletResponseresponse)/查询读者信息readerForm.setBarcode(request.getParameter(barcode);ReaderFormreader=(ReaderForm)readerDAO.queryM(readerForm);request.setAttribute(readerinfo,reader);/查询读者的借阅信息request.setAttribute(borrowinfo,borrowDAO.borrowinfo(request.getParameter(barcode);/完成借阅Stringf=request.getParameter(f);Stringkey=request.getParameter(inputkey);if(key!=null&!key.equals()Stringoperator=

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论