版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
--图书馆借阅系统该设计目录TOC\o"1-3"\h\u18188一、开发技术 随着我国经济的发展,我国对于社会主义文明建设的要求也越来越高,对于社区的文化建设也越来越看中。目前,我国社区也开展各类文化活动,举办各类比赛,有条件的社区也开始建设属于自己社区的图书角,相比于其它活动,为了更好的管理图书角,需要开发一个信息化的图书馆借阅系统来对图书角的图书借阅、归还实现信息化管理。针对上述情况,本文将以社区为原型,采用Java编程语言来开发一个适合社区图书角使用的图书馆借阅系统,通过本系统来优化图书角的图书借阅、归还流程,也可以对图书类别以及书籍信息进行更高效的管理,简化借阅流程,提供社区信息化建设,更好的丰富社区的文化建设。一、开发技术一、SSH(struts+spring+hibernate)架构技术SSH架构是目前软件开发项目的主流框架之一,主要是面向中小型项目的架构选择以及开发。SSH架构是一个三层架构,由于其代码保护强,所以在技术上又被称为“安全外壳协议”。SSH框架是由Struts、Spring、Hibernate三个子类构成,Struts在框架中的作用是控制业务跳转,可以将前台所有的请求通过Struts转到系统后台的逻辑处理层,来对请求进行处理并经Struts返回结果;Hibernate是作用是对于数据库的访问控制,对于数据的持久层进行管理,Hibernate兼容多种数据库类型,可以更加高效快捷的完成相关数据库操作;Spring作为框架的管理员,对于Struts以及Hibernate进行统筹管理,并实现后台的动态查询效果。SSH框架主要是针对J2EE的整合管理,也是一个MVC框架,将代码的逻辑层、展现层、模型层都进行了分割,有效的实现代码的动态分割管理,从而实现代码的可运维性强,减轻开发人员的工作量的同时提高了开发效率。二、动态网页技术动态网页技术是一种可以与用户进行交互的网页技术,其与静态网页技术最大的区别就是可交互性,动态网页技术目前可以通过多种编程语言来进行开发,由于本次课题所选择的是Java编程语言,所以本课题使用的动态网页技术是JSP(JavaServerPages)技术。JSP动态网页技术最大的优点是跨平台性,JSP技术也支持代码的重构,可以将HTML代码以及CSS代码兼容于JSP页面中,其次还支持Java的预编译功能。对于JSP来说业务代码是相互分离的,可以通过JSP来实现网页的动态内容实现,并且可以通过SpringMVC实现业务层以及视图层的分离,如果在JSP页面修改动态代码也不会影响JSP的页面代码。三、Spring框架技术Spring技术又被成为Spring框架,是当前主流的三大框架之一,其原理是通过JavaBean来完成EJB完成的操作,Spring的耦合性强,不仅限于服务器端程序的开发,还应用于APP以及移动端的开发。Spring框架的初衷是解决J2EE在开发过程中所出现的问题并且提高程序员的开发效率,在Spring框架问世后,成为了Java编程领域的一个轻量级且开源的框架,免费让程序员进行使用。在后续的不断升级中,Spring也支持面向接口编程、面向对象设计,让代码更方便进行测试;在新版本的Spring框架中,增加了面向切面编程以及控制反转,可以让代码更加的干净以及便于用户后期维护、管理。目前,Spring框架已经面向用户开源使用,相比Struts框架,其最大的特点是方便解耦,并且简化开发步骤及流程,避免代码的过度耦合;其次,对于事务的支持更加灵活,将事务代码从Controller中解脱,并且提前声明遍历来调用事务,提高开发效率以及代码质量;Spring最重要的一个优点是兼容性强,可以和Struts、SpringMVC以及MyBatis进行集成,降低其它框架的使用难度,并且更灵活的支持各类框架。二、MVC技术MVC技术又称为MVC设计模式,是将代码实现模型与用户界面分离的一个框架,MVC通常被称为“视图-模型-控制器”,用于代码的分层管理以及开发。MVC最初起源于.net开发的桌面程序中,在后来的演变升级过程中,主要应用于网页端的开发[3]。MVC的优点在于代码重用性高,可以将不同视图的请求同时访问一个服务器的代码,将逻辑层以及视图层进行分离,可以让开发人员在后期的代码修改以及维护中更加的方便;其次,MVC设计模式部署效率快,在开发过程中让开发人员的精力集中于业务层开发,提高开发人员的开发效率;适配性强,不同层级的技术各司其职,更好的对代码进行工程化、工具化管理。二、需求分析(一)可行性分析1.经济可行性图书馆借阅系统将作为毕业设计来开发,系统采用Java编程语言,所需要的硬件是个人PC,系统的软件环境是Jdk1.8,系统的开发工具将通过MyEclipse、Tomcat以及MySQL数据库进行开发,所用的环境以及开发工具为开源工具,无需支付费用;系统功能设计所进行的需求分析是通过图书馆以及知网等途径查阅,也无需查阅相关收费网站等,所以开发本系统在经济条件的允许范围内。2.技术可行性图书馆借阅系统将通过Spring、Struts架构来进行开发,该架构是三层架构,将后台代码进行分离,实现代码的分层以及系统开发的调理,在大学课程中也学过Spring架构,并且在课程设计中也通过Spring、Struts进行小系统的开发,所以通过Spring架构开发本系统的可行的,没有技术上的空白。其次,系统进行数据存储也是通过MySQL数据库,而且大学课程也有《数据库设计概论》课程,完成对数据库语法的学习以及应用,所以将MySQL应用于本系统也是可行的,所以开发本系统在操作条件的允许范围内。系统的框架分析如下图:图2.1框架结构图2.法律可行性图书馆借阅系统是为重庆移通学院提供一个活动发布平台,让用户可以通过本平台来参加活动,本系统的开发是通过开源的Struts架构以及开发工具开发,而且系统的功能都在法律许可的范围内进行,也不存在侵犯知识产权的情况,系统所有的用户信息都将加密存储,也不会存在非得手机个人隐私的情况,所以开发本系统在法律条件的允许范围内。(二)非功能需求分析安全分析:使用本系统对于社区图书角的日常管理工作进行信息化的管理等,可以更好地保留数据并提高数据安全性。兼容性分析:可运行Windows10或同类型操作系统的最新或更新版本,兼容主流浏览器和移动设备,都可以通过浏览器访问系统。运营需求分析:系统使用Tomcat集合特性解决系统并发性问题,编写高效代码,简化SQL查询语句,加快查询,解决SQL注入同步和集成。系统分析:在本程序开发之前,所有功能模块都是通过查阅图书馆的相关资料并结合当前社区图书角日常工作进行确定的,本系统开发上线将解社区图书角在日常管理中所存在的问题并更好实现图书角的信息化建设。(三)系统流程分析业务流程图分析是指对系统的所有业务的一个流程以业务功能对系统进行细化,可以通过业务流程图更清楚的了解系统的业务流程。本论文将通过描述两个角色的因管理的功能模块来描述系统的业务流程。用户登录系统可以检索图书,并且可以借阅图书、查看借阅记录、对系统进行留言建议等,所以该功能的业务流程如图2.2所示:图2.2用户业务流程图管理员角色登录系统后可以对于用户、图书、图书类别以及借阅等进行系统的管理,图书借阅可以对于借阅、归还、逾期查询等进行管理。所以在本系统中管理员的业务流程图如下:图2.3管理员业务流程图(四)数据流程分析根据系统功能需求分析和可行性分析,系统的外部实体分为两个:管理员、用户,社区图书馆借阅系统的顶层数据流图如图2.4所示:图2.4顶层数据流图根据系统的顶层数据流图,管理可以对图书信息进行管理、借阅记录进行管理,用户可以借阅图书,查看图书信息。用户角色的数据流程图如图2.5。图2.50层数据流图管理员通过社区图书馆借阅系统可操作的功能包括图书信息管理、图书类别管理、注册用户管理等功能,管理员角色的数据流图下图所示。图2.61层数据流图(五)用例分析在系统规划阶段,对于系统进行手机需求以及定义需求范围,并通过需求分析来完成系统的功能分析设计,根据分析结果,系统的用户角色分为社区图书馆借阅系统的用户角色功能用例图如下图所示。图2.7系统用户角色用例图社区图书馆借阅系统的管理员角色功能用例图如下图所示。图2.8系统管理员角色用例图三、系统设计(一)功能模块设计根据系统的需求分析,社区图书馆借阅系统的功能将按照用户角色来区分,在系统的用例图中已经进行了展示,用户角色登录系统后可操作的功能包括图书检索、借阅记录、逾期记录、留言建议、个人信息维护等;管理员角色登录系统可操作的功能包括用户管理、图书管理、图书类别管理、图书借阅管理、系统管理。社区图书馆借阅系统的功能结构图如图3.1所示。各个模块的功能描述如下。图3.1系统功能结构图(二)时序图设计对于社区图书馆借阅系统的大体的功能模块进行了设计,并建立了系统的功能结构图,下面将分各系统,详细的介绍社区图书馆借阅系统的部分功能模块:社区图书馆借阅系统面向两种角色:管理员、用户。本节将通过用户角色来介绍社区图书馆借阅系统的用户操作时序图,系统用户角色操作时序图如下:图3.2用户角色操作时序图系统管理员角色的操作时序图设计如下:图3.3管理员管理模块时序图四、数据库设计(一)概念结构设计数据库的概念结构设计是对系统的各个表之间的相关关系进行展示,表与表之间的联系通过外键相连接,所以本小节将通过对数据库的各个表进行物理设计,包括设计每个表的逻辑名称、逻辑类型以及长度等等,并且设计好每个表的外键以方便多表联查,经过范围确认以及需求分析,社区图书馆借阅系统的数据库将设计六个表来完成系统功能。社区图书馆借阅系统E-R图如图4.1所示。图4.1系统E-R图(二)逻辑结构设计根据图4.1对于系统的数据库的逻辑模型的初步介绍,社区图书馆借阅系统将设计6个数据库表,关系表详细说明如表4.2至表4.7所示。表4.1管理员表(admin)字段名描述类型长度是否空是否主键aid管理员编号varchar32否是lname登录名varchar255是否pwd密码varchar255否否表4.2留言建议表(answer)字段名描述类型长度是否空是否主键id编号varchar32否是uno读者编号varchar255否否ques留言内容varchar2000否否表4.3书籍信息表(book)字段名描述类型长度是否空是否主键bno图书编号varchar255否是bname图书名称varchar255否否tid图书类别varchar32否否pic图书封面varchar255否否isbnISBNvarchar255否否author作者varchar255否否pubs出版社varchar255否否pdate出版日期varchar255否否quan库存数量int2否否表4.4书籍类型信息表(bookType)字段名描述类型长度是否空是否主键tid类别idvarchar32否是tname类别名称varchar255否否表4.5借阅记录表(records)字段名描述类型长度是否空是否主键id编号varchar32否是bno图书编号varchar255否否uno读者编号varchar255否否indate借阅日期varchar255否否odate最迟归还日期varchar255否否sdate实际归还日期varchar255否否表4.6用户信息表(users)字段名描述类型长度是否空是否主键uno读者编号varchar32否是password登录密码varchar255否否uname姓名varchar255否否sex性别varchar10否否tel手机号码varchar255否否Jf积分int2否否五、系统实现(一)系统登录模块实现社区图书馆借阅系统的登录注册前台页面代码的实现是通过WebRoot文件夹下的login.jsp实现管理员登录,通过login.jsp实现用户页面的登录,对于用户添加页面是通过users_Add.jsp来实现,这三个页面将数据从前台提交到后台都是通过form表单提交的方式进行提交,然后将表单提交中所填写的用户名、密码信息提交都后台,系统通过JDBC来与MySQL数据库进行校验,从而实现用户的登录注册。系统登录的后台代码是通过admin_servlet中Login方法来进行实现,通过request.getSession()的方式来获取前台传过来的数据,然后调用UserServiece的方法来调用DB.java中与数据库进行交互的SQL方法,并且通过select查询用户是否存在,并且返回以User实体类为类型的数据,若返回的数据为空,则说明用户不存在,提示“用户名或密码不正确”,否则跳转到首页,将返回的user信息保存到网站cookie中。同理,管理员登录的方法也是如此流程进行数据库的请求访问,用户登录的页面截图如下:图5.1用户登录页面截图(二)图书检索实现设计社区图书馆借阅系统的图书检索前台页面代码的实现是通过WebRoot文件夹下的index.jsp实现,通过top.jsp实现首页上部内容,对于底部页面是通过bottom.jsp来实现,这三个页面共同构成了首页显示,系统首页都是通过调用后台的查询接口来实现,首页显示的图书编号、图书名称、图书列表、图书封面、ISBN编号都是通过检索模块查询来进行展示。系统检索模块的后台代码是通过调用图书的book_servlet中的查询方法来实现,图书信息列表查询方法是调用book_servlet中的bookManage方法实现都是调用JDBC的方法来调用数据库进行交互的SQL方法,并且通过select查询所需要的图书信息以及封面信息等,并且返回不同的实体类,系统图书检索模块实现截图如下:图5.2图书检索页面截图(三)图书分类实现设计社区图书馆借阅系统的图书类别的代码的实现是通过WebRoot文件夹下的bookType_Manage.jsp实现图书信息类别的展示,通过bookType_Add.jsp实现图书类别的添加,对于修改图书类别页面是通过bookType_Edit.jsp来实现,对于图书信息类别的新增以及修改都是从前台提交到后台都是通过form表单提交的方式进行提交,bookType_Manage是通过查询Controller中的list方法来查看,系统通过JDBC来与MySQL数据库进行校验,从而实现图书信息类别的增删改查。图书类别模块查询的后台代码是通过bookType_servlet中bookTypeManage方法来查询所有,通过bookTypeAdd方法来获取前台传过来的数据,并且通过insert来新增图书类别类别,并且返回以Boolean类型的数据,图书信息类别查询页面截图如下:图5.3图书信息类别页面截图(四)借阅管理实现设计社区图书馆借阅系统的图书类别的代码的实现是通过WebRoot文件夹下的bookType_Manage.jsp实现图书信息类别的展示,通过bookType_Add.jsp实现图书类别的添加,对于修改图书类别页面是通过bookType_Edit.jsp来实现,对于图书信息类别的新增以及修改都是从前台提交到后台都是通过form表单提交的方式进行提交,bookType_Manage是通过查询Controller中的list方法来查看,系统通过JDBC来与MySQL数据库进行校验,从而实现图书信息类别的增删改查。图书类别模块查询的后台代码是通过bookType_servlet中bookTypeManage方法来查询所有,通过bookTypeAdd方法来获取前台传过来的数据,并且通过insert来新增图书类别类别,并且返回以Boolean类型的数据,图书信息类别查询页面截图如下:图5.4图书信息类别页面截图(五)留言管理实现设计社区图书馆借阅系统的图书信息管理的代码的实现是通过WebRoot文件夹下的book_Manage
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 高考志愿填报指南如何选大学挑专业不踩坑
- 盆腔炎复发风险的评估与干预
- 白血病护理中的感染控制
- 案例教学在护理中的应用
- 2026 塑型进阶年糕课件
- 管道防腐蚀涂料与涂层技术
- 福辛普利钠片与血管紧张素受体拮抗剂联合使用的效果比较
- 装袋师产品包装装袋处理2025年合同协议
- 梨树县教师编试题及答案
- 考天津公务员试题及答案
- 口腔颌面部感染
- 农贸市场消防安全隐患排查
- 报价单-通用模板
- 双管高压旋喷桩施工方案
- 832个贫困县名单
- 开封滨润新材料有限公司 20 万吨年聚合氯化铝项目环境影响报告
- 离心泵的结构和工作原理
- 2023年广州市黄埔区中医院护士招聘考试历年高频考点试题含答案解析
- 第四章基层疾病预防控制与妇幼保健职能演示文稿
- 高考乡土散文的阅读技巧
- JJG 1105-2015氨气检测仪
评论
0/150
提交评论