毕业论文——基于Web的图书综合管理与智能推荐系统的研究与实现_第1页
毕业论文——基于Web的图书综合管理与智能推荐系统的研究与实现_第2页
毕业论文——基于Web的图书综合管理与智能推荐系统的研究与实现_第3页
毕业论文——基于Web的图书综合管理与智能推荐系统的研究与实现_第4页
毕业论文——基于Web的图书综合管理与智能推荐系统的研究与实现_第5页
免费预览已结束,剩余39页可下载查看

下载本文档

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

文档简介

重庆理工大学毕业论文 基于web的图书综合管理和智能推荐系统的研究与实现 编号 毕业设计(论文)题目 基于Web的图书综合管理与智能推荐 系统的研究与实现 二级学院 计算机科学与工程 专 业 计算机科学与技术 班 级 XXXXXXXXXXX 学生姓名 学号 XXXXXXXXX 指导教师 职称 XXXXXX 时 间 年 月 目 录摘 要IAbstractII1 绪论11.1 论文背景11.2 国内外研究现状11.3 本人所做工作11.4 论文结构安排22 相关技术32.1 JSP32.2 Struts32.3 JQuery32.4 Java43 系统需求分析53.1 可行性分析53.1.1 技术可行性53.1.2.经济可行性53.2 需求分析53.2.1设计目标53.2.2 用户分析63.3 功能需求73.4 非功能需求83.4.1性能需求83.4.2 兼容性需求83.4.3安全性需求84 系统设计94.1系统概要设计94.1.1系统架构概述94.1.2系统模块设计104.1.3系统总体设计104.2 数据库设计114.2.1 数据库概念设计114.2.2 数据库表的设计135 系统实现185.1登录模块185.2 系统设置模块195.2.1 图书馆信息195.2.2 图书管理员管理205.2.3 借书证参数设置215.3读者管理模块225.3.1 读者类型管理225.3.2 读者信息管理235.4 图书管理模块255.4.1图书类型管理255.4.2 图书信息管理265.5 图书借还功能模块275.5.1 图书借阅275.5.2 图书续借285.5.3 图书归还295.6 系统查询模块295.6.1图书档案查询295.6.2图书借阅查询305.6.3图书归还查询305.7 图书智能推荐315.8 数据库连接316 系统测试336.1 测试环境336.2 测试计划336.3 测试设计及分析336.3.1功能测试346.3.2 数据和数据库完整性测试356.4 小结357 结束语36致 谢37参考文献38摘 要随着计算机技术的迅速发展,我们已经来到了信息化时代。图书管理系统要保存很多关于图书和用户的信息,但有些图书馆却还在使用比较旧的系统,其中很多是基于C/S模式的。基于C/S模式的图书管理系统要借阅者和管理员直接交流,对硬件要求也比较高,对不同硬件和系统要开发出不同的版本。基于C/S模式的图书管理系统已经不能适应用户的需求了,开发出一个基于Web的图书管理系统是很有必要的。同时,为了给读者带来更好的体验,在实现基本的图书综合管理的基础之上,增加了一个图书智能推荐的功能。本系统拟采用B/S模式开发,以MyEclipse作为主要开发工具,应用JSP开发技术和Sturts开发框架,以Java和JavaScript作为开发语言,利用MySQL实现数据的存储,开发出一个基于Web的图书管理系统。系统面向的用户主要有读者和管理员两种,读者具有的功能有登录、查询个人基本信息和借阅记录、修改信息和密码、图书查询、图书智能推荐等。管理员具有的功能有登录、系统设置、图书管理、读者管理、系统查询和密码修改等。关键词:图书管理系统 智能推荐 WebIAbstract With the rapid development of computer technology, we have come to the information age. Library management system to save a lot of information about books and users, but some libraries still use older systems, many of which are based on C / S Mode. Based on C / S model library management system administrator to borrowers and direct communication, the hardware requirements are relatively high, with different hardware and systems to develop different versions. Based on C / S model library management system can not meet the needs of users, to develop a Web-based library management system is necessary. Meanwhile, in order to give the reader a better experience in the realization of basic book on the integrated management, the addition of a Books intelligent recommendation function.The system to be adopted B / S model development, with MyEclipse as a major development tools, applications JSP development techniques and Sturts development framework for Java and JavaScript as a development language, use MySQL for data storage, the development of a Web-based library management system . User-oriented system administrators and readers are mainly two kinds of readers have features are login, query basic personal information and loan record, edit information and passwords, book search, book smart and recommend. Administrators have the login function, system settings, library management, the reader management system query and modify passwords and so on.Key words: Library management Intelligent Recommendation WebI1 绪论1.1 论文背景根据相关资料显示,我国现有的图书馆数量已经超过了两千个,各种资料室更是多不胜数。然而很多图书馆和资料室的管理系统还是比较的原始,甚至有些还在使用传统的手工方式来进行图书管理。读者想要查询一些书籍,就必须要到图书馆去查。而且这种图书方式,对信息的整理太过复杂难以统计。采用C/S模式的图书管理系统也是比较多。但采用这种方式的话,往往只是在图书馆装有软件,读者要查询图书也必须要到图书馆。随着时代的进步,管理系统的信息化程度随之而增高,这种基于模式的系统已经不满足人们的需求了。开发一个基于web的图书综合管理系统很有必要。1.2 国内外研究现状国外的图书管理系统起步较早,他们的系统大多都实现了数字化、自动化,基本上图书管理所需功能都已实现。他们一般把系统的数据集中存储起来,让后进行分布式操作,尽心数据共享和数据的操作,强调信息的集成和利用。国外的许多高校或一些图书馆机构仍在图书管理这方面一直在进行努力的研究,有一些还引用了ERP的概念和方法,让系统的性能趋于更加完善。在国内,计算机和互联网技术发展非常的迅速,而图书管理的技术当然也得到了提升,很多系统都完成了自动化、数字化更新。在原来图书管理系统的基础之上,我国的图书管理系统也有很大的进步。以现在的趋势来看,国内外的图书管理系统都在向着智能化、信息化、集成化的方向发展。1.3 本人所做工作1.需求分析以及需求文档的整理编写,并且参照其他的类似的信息管理系统,确定系统所具备基本的功能。然后进行系统的概要设计,详细设计,数据库设计。2.根据项目要求的开发技术,搭建Web系统开发的核心框架,网页设计以及制作,并且完成整个系统架构的搭建和部分功能的开发。3.系统测试,查找以及修复Bug。完成系统总体功能上的测试,交付给客户使用。通过客户对系统功能的错误进行修改,保证系统能够正常的运行。1.4 论文结构安排这次毕业设计的目的是开发一个基于web的图书馆综合管理与智能推荐系统。管理员可以通过该系统方便地管理图书信息,读者借阅情况,用户权限设置等。读者可以通过该系统查询个人信息和修改密码密码等功能,同时还可以根据读者借书记录和图书馆借阅情况向读者智能推荐图书。系统的论文结构如下:第1章 即为本章绪论,描述开发基于web的图书综合管理与智能推荐系统的研究与实现这个课题的背景情况和国内外研究现状以及论文的结构布置。第2章 为相关技术介绍,简单介绍系统用到的JSP、MySQL、jQuery和Struts等技术。第3章 为对系统的需求分析,分析系统的可行性、目标和用户需求特性,设计出系统的功能。第4章 为概要设计,对各个功能模块划分和实现的概述。第5章 为详细设计,描述每个功能模块的具体实现方式。第六章为系统测试,对系统进行测试,测试系统是否能完美运行,并对测试结果进行分析。第七章为总结,总结做这次设计的收获,并谈一下系统的优缺点。后面的是致谢,文章最后附上的是主要的参考文献。2 相关技术2.1 JSPJSP的全称为 Java script page ,实质上是一个简化了的Servlet。它是由传统的HTML文件加上Java代码再加上jsp标识而形成的jsp页面。他具有一次编写,到处运行,在这一点上Java比PHP更出色,除了系统之外,代码不用做任何更改;系统的多平台支持,基本上可以在所有平台上的任意环境中开发,在任意环境中进行系统部署,在任意环境中扩展。相比ASP/PHP的局限性是显而易见的;强大的可伸缩性,从只有一个小的Jar文件就可以运行Servlet/JSP,到由多台服务器进行集群和负载均衡,到多台Application进行事务处理,消息处理,一台服务器到无数台服务器,Java显示了一个巨大的生命力;多样化和功能强大的开发工具支持。这一点与ASP很像,Java已经有了许多非常优秀的开发工具,而且许多可以免费得到,并且其中许多已经可以顺利的运行于多种平台之下。2.2 Struts Struts是Apache软件基金会资助的一个开源项目。它原是一个子项目Jakarta项目,并于2004年3月成为ASF的顶级项目。 Struts的ApacheJakarta作为项目的一部分,该项目的创始人希望研究项目,以改善和提高jsp等相关技术。 Struts的这个名字来自使用旧的建筑和飞机的支持金属架。为什么这个框架被称为“支柱”,就是取其支撑的意思。这也是在web应用中的作用的发展的解释精彩描述支柱,Struts是“支柱的意思,枝”,虽然应用JSP可以帮助你解决很多的问题,但是由于该项目的代码开发的创造者它带来了诸多不便,可重用性差,所以支柱应运而生,以帮助用户解决在最短的时间内这些问题。 Struts框架提供以下服务:一个Servlet控制器;提供大量的标签库;为使用不同的配置文件的国际框架,可以帮助用户选择合适的语言; XML解析工具;文件下载机制等优点。2.3 JQueryjQuery是一个轻量级的JavaScript库。它与CSS3和各种浏览器兼容。可以更容易地处理HTML和实现动画,为网站Ajax交互更加方便。jQuery的文档是满的,你可以选择许多成熟的插件。jQuery是免费的,开源的,使用MIT许可证。jQuery的语法设计,使其更容易开发,此外,提供jQuery的API,允许开发人员编写插件。它包括以下优点: JQuery的核心js文件只有几十KB,基本上不影响网页加载速度; jQuery的选择更方便地使用,例如,找邻居JS DOM对象可以写几行代码,但是代码取得一行的jQuery; JQuery的连锁经营可以写在代码的多种操作,更简洁的单行; JQuery的同时简化操作CSS JS代码和代码比爵士更好的可读性; AJAX JQuery的简化操作简单地返回后台JSON格式的字符串,可以做到与前台沟通; jQuery有丰富的第三方插件,如:菜单栏,日期控制,图像插件开关,弹出窗口的头版上的基本成分,所以有相应的插件和根据自己的需要做使用jQuery效果惊人重写和封装插件,简单实用的插件,以及;提供扩展接口的jQuery(选择)删除,你可以添加新的功能jQuery的命名空间。所有插件都基于jQuery的扩展接口的发展。2.4 JavaJava是在计算机史上影响深远的编程语言,它是一门面向对象的编程语言,不仅吸收了C+语言的各种优点,还摒弃了C+里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程。Java语言最大的优点是它的跨平台性。一次编写,到处运行。能始终如一的在任何平台上运行,使得系统的移植、平台的迁移变得十分容易。还有简单易学、面向对象、安全性好和可移植性强等优点。对对象技术的全面支持和平台内嵌的API使得Java应用具有无比的健壮性和可靠性,这也减少了应用系统的维护费用。3 系统需求分析3.1 可行性分析本系统采用的是市面上开源免费的开发工具和相关技术。使系统能够比较高效运行的同时还能兼顾经济性。开发本系统的可行性如下所述:3.1.1 技术可行性本系统选择采用JSP开发出的界面美观友好,同时加上使用jQuery,使得人机交互的体验更好。使用MySQL来管理数据库,使数据处理起来方便且安全性得到保障。硬件方面的话,市面上正在使用的硬件基本都可以满足本系统所需。随着硬件的更新,电脑的性能愈加强大,满足系统的性能需求就更不用说了。3.1.2.经济可行性计算机技术和互联网技术的发展一直都非常的迅速,而本系统对硬件的要求很低,软件方面因为系统不是很大型、很复杂,开发起来成本也不高。而开发了这个系统可以比较好地提高图书馆的工作效率,而以后必定也是个信息化、数字化时代。因此本系统在经济可行性上是可行的。3.2 需求分析本节内容包含设计目标和用户特性分析,通过对用户的特性结合项目来进行系统的设计。3.2.1设计目标本系统主要建立一个的基于web的图书综合管理的图书管理系统并带有图书智能推荐的。用于对图书的综合管理和图书的智能推荐。本系统主要有三种用户类型:1.读者:在本系统下可以查询图书馆的藏书情况、查询个人借阅情况和个人基本信息等。2.图书管理员:对读者的借阅情况查询,对读者进行借书还书续借,对图书信息的增删改查,对读者信息的增删改查等。3.系统管理员:对图书馆信息进行修改更新,对图书管理员和读者的增删改查、权限设置等。3.2.2 用户分析本系统是一个基于web的对图书进行综合管理的系统。主要用户类型分为读者、图书管理员和系统管理员。读者可以通过本系统查询馆藏图书、个人借阅情况和一些个人的基本信息,此外还可以对自己的密码信息进行修改。图书管理员可以通过本系统完成对图书的入库和出库的操作,并可以对图书信息进行维护更新;可以对图书类型和读者类型进行添加删除和更新维护等操作。系统管理员可以通过本系统对图书馆信息进行更新维护,对图书管理员的更新维护以及添加删除,此外系统管理员还拥有图书管理员的全部权限及功能。密码修改和图书查询是全部系统用户都具有的。详细描述如表3.1所示:表3.1 用户描述用户类描述读者 本系统开发的一个重要目的是为了方便读者的使用,读者功能主要有图书的查询,个人信息查询及修改还有根据读者的借阅记录以及整个图书馆的图书借阅情况进行的图书智能推荐。图书管理员 为了实现图书管理员对图书的管理及读者的相关操作,图书管理员功能有图书信息及类型的更新维护;对读者信息及类型的更新维护;对读者发出的图书操作申请进行相关操作。系统管理员 设置系统管理员主要是为了对图书管理员的信息和图书馆的信息进行更新维护。还可以根据图书管理员的不同功能作用而进行图书管理员的权限设置。此外还有借书证的参数设置等。三类用户的用例图如图3.1所示: 图3.1 用户的用例图3.3 功能需求本系统主要实现图书查询,图书借阅,和各种信息的管理等功能,详细如下:1. 登录读者和管理员等系统用户登录系统的话必须要先进行身份验证,身份验证成功则根据不同身份进入对应的页面。用户名或者密码错误则经过数据库验证之后给出相关错误提示。2. 系统设置系统管理员登录之后才独有的功能,主要实现对图书馆信息的更新维护、图书管理员的添加删除以及权限设置等,还有对借书证的参数设置。信息修改的时候信息没有填写完整,系统会给出错误提示。3.读者管理功能图书管理员可以对读者类型或读者信息进行增删改查等操作。当进行删除操作的时候,系统会给出提示,以免发生误删操作。当添加读者类型或信息的时候,信息也要填写完整,不然系统会给出错误提示。并将焦点指向错误输入框。4. 图书管理功能管理员可以对图书类型和图书信息进行增删改查等操作进行更新维护。每个删除操作系统都会提示管理员,以免误删信息。修改及添加信息需要填写完整。5. 图书借还管理管理员根据读者的借阅申请,进行借阅、续借和归还归还图书等相关操作。图书借阅需要先查询读者的借阅图书记录,判断其是否能继续借阅图书。续借也要查询借阅信息,满足条件后,应还图书的时间就往后推三十天。归还图书也是先查询借阅记录,点击归还后,相关信息写入图书归还表中,完成图书归还。6. 系统查询系统用户通过该功能模块进行图书、借阅情况等信息进行查询。其中,根据读者和管理员的身份不同,系统查询中的借阅情况和还书提醒也有不同。管理员查询的结果是全部的信息,而读者查询的结果是个人的信息。7. 图书智能推荐根据读者借阅记录和馆藏图书借阅情况智能推荐图书给读者。8. 修改密码用户通过输入原密码等验证之后修改个人密码。3.4 非功能需求在需求分析方面,除了系统需要实现的主要功能需求之外,还有一些在非功能方面的需求也是系统必须解决的重点。这里主要涉及到性能需求、安全需求和兼容性需求。3.4.1性能需求系统的响应时间必须在人类的感觉和视觉范围内,一般在1秒之内,同时系统也必须足够迅速,一般在5秒之内,可以基本满足用户的需求。3.4.2 兼容性需求Web端应该能够兼容目前市场上主流的浏览器(Opera,Firfox,Chrome,IE10以上等)。3.4.3安全性需求只有合法的用户才能登陆使用系统,登陆系统之后才能进行后续的操作。同时设置Session过期时间,当Session过期之后需要重新进行登录。4 系统设计在系统设计阶段的任务是:实现系统分析阶段确定的系统逻辑模型和所规定的系统功能,建立系统的物理模型。在我们进行系统设计时,应该遵循以下原则:1.经济性:首先必须要考虑系统的一个开销,系统的投资/效益比,在满足系统要求的前提下,应该尽可能减小系统开销,并且在系统有效性和兼容性两方面取得合理的折中。2.系统性:每一个系统是作为一个整体而存在,所以,在系统设计中,要从整个系统的角度考虑。系统的代码标准必须要统一,设计规范要标准,对系统的数据采集要做到数据一致性、全局共享,这样才能使一次输入能够得到多次利用,最大化的减小工作量。3. 可靠性:在系统设计中,要注意对系统数据安全进行检错、保密性及纠错能力的设计。4. 灵活性:在系统设计中,系统的底层代码应该足够灵活,应具有较好的开放性和独立性。5. 安全性:信息系统的安全保障是系统能够正常运行的基本保证,应将系统的安全性作为重中之重。4.1系统概要设计本节主要简单描述整个系统的设计,分为系统架构概述、系统模块设计和系统总体设计等。4.1.1系统架构概述本系统后台采用的是Struts框架技术,在系统开发的效率上还是比较快的。前端技术方面采用了比较流行的HTML5+CSS和jQuery。本系统是通过Java MVC三层架构思想设计和实现的。Service服务层通过调用Dao层的服务,来完成业务逻辑。Action则负责控制程序的跳转,Http 请求通过Struts中心控制器分发到相应action进行业务逻辑的处理,并准备下一个页面所需要的数据,然后跳转到相应的JSP页面,进行响应输出。系统运行活动图如图4.1所示:图4.1系统活动图4.1.2系统模块设计本系统的模块主要可以分为系统设置、读者管理、图书管理、图书借还、系统查询、智能推荐、用户登录和密码修改等模块。4.1.3系统总体设计本系统支持多种浏览器,图书管理的功能比较完备,还带有图书智能推荐。图书管理员通过本系统可以简单方便地管理图书和读者的信息,有利于图书馆的运行管理。读者能通过本系统方便快捷的查询图书信息,还可以为其智能推荐图书,让读者可以更轻松地享受阅读。1) 功能设计系统设置:对图书馆信息进行更新维护更新;对图书管理员信息的更新维护;对借书证的参数进行设置。 读者管理:对读者类型的管理;对读者信息的管理。 图书管理:对图书类型信息进行更新维护;对馆藏图书的信息进行更新维护;对图书的书架信息进行增删改查。 图书借还:图书借阅;图书归还;图书续借。系统查询:实现系统用户对馆藏图书的查询;查询图书借阅情况;图书借阅到期提醒。 智能推荐:根据读者的借阅记录和图书馆借阅情况而进行推荐。 系统登录:系统用户输入正确的用户名和密码进行登录。 密码修改:输入正确的原密码后进行密码修改。2) 操作设计:系统的各项功能都采用了分类查看,简单预览,详情操作,添加、删除修改等操作。使得系统操作简单明了,高效便捷。3) 界面设计:本系统的界面采用主流设计,整套系统都使用扁平化的界面设计风格,系统的界面简洁大方美观,交互性也比较强。4.2 数据库设计4.2.1 数据库概念设计本系统采用实体-联系图(简称E-R图)来描述系统的概念模型。E-R图由实体、属性、联系三部分组成,其符号如图4.2所示:图4.2 E-R图元素下面给出本系统一些主要实体的E-R图: 1、读者实体图:实体“读者”的属性有:姓名、性别、邮箱、读者类型、证件类型、电话、生日、证件号码、录入时间,如图4.3所示:图4.3 读者E-R图2、图书实体图:实体“图书”的属性有:图书ID、书名、作者、入库时间、页码、操作员价格、ISBN、出版社、书架,如图4.4所示:图4.4 图书E-R图3、系统实体联系图:系统主要实体有:读者、图书、图书管理员、系统管理员,描述了这些实体间的关系,如图4.5所示: 图4.5 系统E-R图4.2.2 数据库表的设计根据需求分析及系统设计,将系统数据库表的设计如下:1)TB_BOOKINFO:图书信息表主要用于存储图书馆中所藏图书的相关信息,其中的相关信息是在图书入库时由操作员进行添加完善,此表主要用于读者和图书管理员对馆中图书的查询,系统用户根据图书的某个属性进行查询,便可得知图书的其他相关信息,其中图书所在书架属性是便于读者借阅时对图书的寻找,图书价格是在读者不慎将图书遗失时对遗失图书进行赔偿的依据。详细设计如表4.1所示:表4.1图书信息表tb_bookinfo字段名称数据类型字段长度是否为空说明barcodevarchar30NoPrimary Keybooknamevarchar70No 书名authorvarchar30Yes作者translatorvarchar30Yes译者ISBNvarchar20No国际标准书号pricefloat8,2No 图书价格bookcasevarchar10No图书所在书架pressvarchar70No 出版社intimedateNo 图书入库时间operatorvarchar30No 操作员pageint10Yes 图书页码2)TB_BOOKTYPE:该表的设计主要是方便对图书的分类,和对图书的查询,在实际应用中图书管理员就是根据图书类型的不同将之分列在不同的书架,以方便读者的借阅寻找,其中可借阅天数项设置了不同类型图书的借阅期限,可根据图书的具体情况进行不同的维护管理,详细设计如表4.2所示:表4.2图书类型信息表tb_booktype字段名称数据类型字段长度是否为空说明ID int10NoPrimary Keybooknamevarchar30No 书名daysint10No 可借阅天数3)TB_BORROW:用于存储图书借阅信息。该表的设计是用于对读者借阅图书进行管理,表中图书ID属性是对借阅图书的唯一性识别标识,读者ID号记录借阅的相应读者,结出时间记录了相应的归还时间,以及归还时是否超时,操作员是对借阅进行操作的人员的记录方便日后的查询,是否归还标识可查询当起读书是否被归还,详细设计如表4.3所示:表 4.3 图书借阅信息表 tb_borrow字段名称数据类型字段长度是否为空说明ID int10NoPrimary KeyreaderIDvarchar10No 读者IDbookIDint10No 图书IDborrowTimedateNo 结出时间backTimedateNo 应归还时间operatorvarchar30No 操作员ifbacktinyint1No 是否归还4)TB_GIVEBACK:用于存储图书归还信息。与图书借阅信息表形成对照的是图书归还信息表,该表的设计除了像上表一样把借阅的图书与相应的借阅者进行对应的联系以外还记录了读者应归还图书的时间,以此判断读者的借阅是否超时,详细设计如表4.4所示:表 4.4图书归还信息表tb_giveback字段名称数据类型字段长度是否为空说明ID int10NoPrimary KeyreaderIDvarchar11No 读者IDbookIDint11No 图书IDbackTimedateNo 归还时间operatorvarchar30No 操作员5)TB_LIBRARY:用于存储图书馆信息。该表包含了图书馆的名称,地址,联系方式,建馆时间,简介等信息,是对图书馆基本属性信息的描述,方便外界读者对图书馆的了解,详细设计如表4.5所示:表4.5图书馆信息表 tb_library 字段名称数据类型字段长度是否为空说明ID int10NoPrimary Keylibrarynamevarchar50No 图书馆名称curatorvarchar10No 馆长telvarchar20Yes 电话addressvarchar100No 地址e-mailvarchar100No 邮箱urlvarchar100No 图书馆网站createDatevarcharNo 创馆时间introducetextYes 图书馆简介6)TB_MANAGER:用于存储管理员信息。该表的设计用于记录管理员的信息,方便对用户的管理,表中包括用户ID 和用户的登录密码,详细设计如表4.6所示:表 4.6管理员信息表tb_manager字段名称数据类型字段长度是否为空说明ID int10NoPrimary Keynamevarchar30No 名字passwordvarchar30No 密码7)TB_PARAMETER:用于存储借书证参数信息。该表是为校外人员设计的,对于需要到图书馆进行借阅的读者可办理临时的借阅证用于对图书的借阅凭证,表中包含了办证所需费用以及证件的有效期限,详细设计如表4.7所示:表4.7图书证参数信息表tb_parameter字段名称数据类型字段长度是否为空说明ID int10NoPrimary KeyCostint10No 办证费用validityint10No 有效时间8) TB_PUCLISHING:用于存储出版社信息,详细设计如表4.8所示:表4.8图书证参数信息表tb_parameter字段名称数据类型字段长度是否为空说明ID int10NoPrimary KeyCostint10No 办证费用validityint10No 有效时间9)TB_PURVIEW:用于存储图书管理员的权限信息,详细设计如表4.9所示:表4.9图书证参数信息表tb_purview字段名称数据类型字段长度是否为空说明ID int10NoPrimary Keysysettinyint1Yes 系统设置权限readersettinyint1Yes 读者管理权限booksettinyint1Yes 图书管理权限 borrowsettinyint1Yes 图书借还权限sysquerytinyint1Yes 系统查询权限10)TB_READER:用于存储读者信息。读者信息表的设计是为了图书馆管理员对读者进行管理,其中读者ID,不同类型证件的号码都是唯一的,是读者在借阅图书时需要输入对读者身份进行识别的信息,读者邮件电话等信息室为了与读者进行联系,读者类型信息决定了读者一次性可借阅的图书的数量,注册时间可用于查询计算读者身份有效的期限,操作员是为了便于对信息才操作的查询。详细设计如表4.10所示:表4.10读者信息表tb_reader字段名称数据类型字段长度是否为空说明Idint10NoPrimary Keynamevarchar20No 名字sexvarchar4No 性别barcodevarchar30No 条形码readertypevarchar11No读者类型telvarchar20Yes 电话e-mailvarchar100Yes 邮箱paperTypevarchar10No 证件类型PaperNO.Varchar20No 证件号码birthdaydateYes 生日intimedateNo 登记时间operatorvarchar30No 操作员11)TB_READERTYPE:此表的设计是为了对不同身份的读者进行分类方便读者的管理,其中可借阅图书数量的属性设定,是根据读者需求的不同对起权限进行的设置,用于规定不同类型读者一次可借阅的图书数量,详细设计如表4.11所示:表4.11 读者类型信息表tb_readertype字段名称数据类型字段长度是否为空说明ID int10NoKeyreadernamevarchar50No 读者名字numberint4No 可借图书本数5 系统实现5.1登录模块本模块主要是用户通过系统的首页登录进入该系统。用户输入正确的用户名和密码,系统会根据用户的身份进行相应权限划分;如果登录信息有错误,则系统提示登入错误的信息,并提示用户输入信息有误,提醒用户重新输入。图书借阅管理系统的登录主页面如图5.1所示: 图5.1 登录系统 用户在登录页面写好用户名和密码,选择登录,登录成功则跳转到系统的首页,否则提示错误信息。在服务器端进行用户身份验证的程序流程图如图5.2: 图5.2 用户登录流程图系统登录的流程为:在浏览器中输入登录界面网址以打开登录界面。在相应输入框中输入正确的用户名和密码,根据用户身份登录进入不同的页面。当用户名或者密码为空却点击登录按钮时,调用写在页面最后的JS代码,提示用户用户名或密码不能为空,并将焦点移到相应输入框。当用户名与密码不相符时,点击登录按钮,提交action,经过数据库验证用户名与密码不符,将error属性存到request域中,重新载入页面,将会在页面中显示 $error,即error属性中的内容“用户名或密码错误!”。5.2 系统设置模块本模块包含了维护更新图书馆信息,管理图书管理员,借书证参数设置等操作。5.2.1 图书馆信息该模块可以实现对图书馆信息更新维护。图书馆信息更新页面为library_mod ify .jsp。根据导航栏点击系统设置下的图书馆信息即进入图书馆信息更新页面,当修改相关信息并点击确定按钮过后,系统提示是否确定修改图书馆信息,当再次点击确定之后将发送library.do?action=libraryModify 方法为post的http请求。经过业务层和数据访问层之后,数据库中的图书馆信息表将会进行相应的更新操作。当数据库操作完成后,将结果返回到相应页面,并在界面中显示,如图5.3所示: 图5.3 图书馆信息5.2.2 图书管理员管理 图书管理员管理页面为manager.jsp。根据导航栏点击管理员设置,界面中将会显示图书管理员的相关信息,如图5.4所示: 图5.4 管理员管理1) 当点击添加管理员时,将会调用jQuery代码弹出添加管理员弹出层。提示用户输入管理员名称、密码和确认密码。当有输入内容为空,而点击确定按钮时,将会调用页面后面的js代码,在界面中提示相关内容不能为空,光标移到错误项。而密码和确认密码不一致时,也会调用js代码,在界面中提示两次输入的密码不一致。当输入的信息符合要求时,将会发送 manager.do?action=managerAdd method=”post”的http请求。通过Struts配置调用action下的Manager类,类通过请求中的字符串匹配到managerAdd方法,实现图书管理员的添加。界面如图5.5所示: 图5.5 管理员添加2) 点击权限设置时,将会调用jQuery代码弹出权限修改弹出层。页面中将展示图书管理员的名称和他所拥有的权限。通过点击拥有权限下的复选框选择该图书管理员所具有的权限。发送 manager.do?action=managerModify method=post 的http请求,调用action下的Manager类 ,再调用该类下的managerModify方法,实现图书管理员的权限修改。如图5.6所示: 图5.6 修改权限3) 点击删除时,界面将会发出系统提示是否删除该管理员。当点击确定时,servlet将会发送http请求,对数据库中的管理员表执行sql语句,完成数据更新。如图5.7所示:图5.7 删除管理员5.2.3 借书证参数设置系统管理员对借书参数的设置,系统管理员可以设置借书证的办证费用和有效期的设置。该模块可以实现对借书证参数的设置。借书证的参数设置页面为parameter_modify.jsp。根据导航栏点击系统设置下的参数设置即进入借书证参数设置页面,系统将会显示原有的参数设置信息。当修改相关信息并点击确定按钮过后,系统提示是否确定修改,当再次点击确定之后将发送http请求。业务层中Parameter类的parameterModify响应,调用数据访问层中ParameterDAO的update方法以完成数据库的数据更新。如图5.8所示:图5.8 参数修改5.3读者管理模块读者管理模块下包含有读者类型管理和读者信息管理两个子模块:5.3.1 读者类型管理读者类型管理页面为readerType.jsp。根据导航栏点击读者类型,界面中将会显示全部读者类型的相关信息,如图5.9所示: 图5.9 读者类型管理 1) 当点击添加读者类型时,将会弹出添加读者类型页面。提示用户输入读者类型名称和可借数量。当有输入内容为空,而点击确定按钮时,将会调用页面后面的js代码,在界面中提示相关内容不能为空,光标移到错误项。当输入的信息符合要求时,将会发送 readerType.do?action=readertypeAdd meth od=”post”的http请求。通过Struts配置调用action下的ReaderType类,该类通过请求中的字符串匹配到readerTypeAdd方法,实现读者类型的添加。如图5.10所示: 图5.10 读者类型添加2)点击修改时,将会弹出读者类型修改页面。页面中将展示读者类型和该类型可借图书数量。将信息正确的修改完成后点击确定按钮。那么将会发送 readerType.do?action=readerTypeModify method=post 的http请求,调用action下的readerType类 ,再调用该类下的readerTypeModify方法,实现读者类型信息的权限修改。3)点击删除时,界面将会发出系统提示是否删除该读者类型。当点击确定时,servlet将会发送http请求,对数据库中的读者类型表执行sql语句,完成数据更新。5.3.2 读者信息管理读者信息管理页面为reader.jsp。根据导航栏点击读者管理下的读者信息管理,界面中将会显示全部读者信息。如图5.11所示: 图5.11 读者信息1) 当点击添加读者信息时,将会跳转到读者信息添加页面。提示用户输入读者名称、性别、生日和联系方式等相关信息。当有关键信息输入内容为空,而点击确定按钮时,将会调用页面后面的js代码,在界面中提示相关内容不能为空,光标移到错误项。其中关键信息后面会有星号。当输入的信息符合要求时,将会发送 reader.do?action=readertype method=”post”的http请求。通过Struts配置调用action下的Reader类,该类通过请求中的字符串匹配到readerAdd方法,实现读者信息的添加。如图5.12所示:图5.12 读者信息添加2)点击修改时,将会跳转到读者信息修改页面。页面中将展示读者学号、姓名、生日、性别和简介等相关信息。将信息正确的修改完成后点击确定按钮。那么将会发送 reader.do?action=readerModify method=post 的http请求,调用action下的reader类 ,再调用该类下的readerModify方法,实现读者信息的修改。3)点击删除时,界面将会发出系统提示是否删除该读者档案。当点击确定时,servlet将会发送相关的http请求,对数据库中的读者信息表执行sql语句,完成数据更新。并将结果显示到界面中。5.4 图书管理模块图书管理包括图书类型管理和图书信息管理两个子模块:5.4.1图书类型管理图书类型管理页面为bookType.jsp。根据导航栏点击图

温馨提示

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

评论

0/150

提交评论