版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 题题 目目 基于 PHP 的图书管理系统 学院专业班级姓名指导教师2015 年 12 月江苏开放大学计算机本(论文) -I-摘摘 要要随着科学技术的进步和计算机行业的迅速发展,人们的工作效率得到大大提高。计算机信息处理系统的引进已彻底改变了许多系统的经营管理。图书管理系统是学校管理机制中的重要组成部分,通过对图书馆管理系统的运行管理机制进行调查和研究,开发了此图书馆管理系统。本文中主要介绍了图书馆管理事务中的常见基本问题等研究背景,进行了全面的可行性分析,详细论证了系统的需求分析、系统设计、系统实现和系统测试过程。本系统使用 PHP 进行网页界面的设计,使用 MVC 设计模式,采用集成开发环
2、境 DreamWeaver 进行开发。后端的数据库采用 MySQL,通过 ODBC 驱动和数据库进行无缝连接。系统实现了用户登录、图书管理、借书证管理、图书借阅管理等功能模块。用户登录模块实现用户的登录和权限判定;图书管理模块实现了对图书的添加、删除、修改、查询等功能;借书证管理模块实现了对学生的添加、删除、修改、查询等功能;图书借阅管理模块实现了学生对图书的借阅、还书和所借图书的查看等功能。测试结果表明,本系统实现了图书馆图书管理的主要功能,基本满足图书管理的需要。关键词关键词:图书馆,图书管理系统,PHP, MySQL ,JavaScript.江苏开放大学计算机本(论文) -II-目 录1
3、 1绪绪 论论 .1 11.1目前图书馆管理系统存在的问题 .11.2系统设计的目的和意义 .12 2可行性分析可行性分析 .4 42.1技术可行性 .42.2经济可行性 .52.3操作可行性 .53 3需求分析需求分析 .6 63.1图书馆管理系统需求概述 .63.2功能需求 .63.2.1 与读者相关的基本功能元素 .63.2.2 与管理员相关的基本功能元素 .73.2.3 总体系统的基本功能元素 .73.3性能需求 .73.4 运行需求.84 4系统设计系统设计 .9 94.1 图书馆管理系统设计指导思想和原则.94.2设计模式 .94.3 图书馆管理系统总体功能概述.104.4 图书馆
4、管理系统各功能模块概述.114.4.1 系统登录模块 .114.3.2 图书管理模块 .124.3.3 学生管理模块 .134.3.4 借阅信息管理模块 .144.3.5 图书检索模块 .164.4 系统数据库设计.175 5系统实现系统实现 .22225.1系统的软件结构 .225.2登录系统模块的实现 .225.3图书管理模块的实现 .245.3.1图书入库功能的实现 .24江苏开放大学计算机本(论文) -III-5.3.2图书维护功能的实现 .255.4学生管理模块的实现 .295.4.1学生添加功能的实现 .295.4.2学生维护功能的实现 .305.5借阅信息管理模块的实现 .335
5、.5.1办理图书借阅功能的实现 .335.5.2办理图书归还功能的实现 .345.6图书检索模块的实现 .355.7系统设计的创新点 .365.7.1系统后台管理的安全性 .365.7.2DAO 数据访问接口.376 6系统测试系统测试 .38386.1系统测试的方法与步骤 .386.2模块测试 .386.2.1 登录模块测试 .386.2.2 图书管理测试 .396.2.3 学生管理测试 .396.2.4 借阅信息管理测试 .406.3 评价.407 7 结束语结束语 .4242致致 谢谢 .4343参考文献参考文献 .4444江苏开放大学计算机本(论文) -4- 1 1绪绪 论论1.11.
6、1目前图书馆管理系统存在的问题目前图书馆管理系统存在的问题(1)检索速度慢、效率低因为图书馆的藏书种类多。数量大,将藏书准确的分门别类,快速检索,手工进行非常困难,往往是终于查到了二维的信息,馆中却没有此书或已被别人借走。图书馆的规模越大,这个问题就越突出。(2)借书、还书工作量大借书、还书频率越大,说明图书馆的作用越大,然而随之而来的大量的借书、还书登记、实存图书的更新以及借出图书超期,遗失等的处理,其工作量之大,往往是人工操作所难以胜任的,而且经常会出现这样那样的差错。(3)图书统计工作难、藏书更新不能及时完成图书馆的图书应根据科学技术的发展和教学工作的需要及时添加和更新,然而由于藏书数量
7、及图书种类越来越多,加上自然损耗,人为破坏,使图书的统计工作难以及时完成,藏书的更新也就很难有针对性的进行,藏书的知识结构得不到良好地控制。我校也是一所发展中的高校,近几年的发展速度很快,图书馆的规模和藏书的数量也在不断地扩大,为了解决海量图书的管理问题,以及学生借阅图书的信息问题,改变传统的管理方式也就成了迫在眉睫的问题了。1.21.2系统设计的目的和意义系统设计的目的和意义随着计算机的广泛应用,其逐步成为现代化的标志。图书馆或者一些企业内部,甚至是书店,在正常运行的过程中总是面对大量的读者信息,书籍信息以及江苏开放大学计算机本(论文) -5-两者相互作用产生的借书信息,还书信息。因此需要对
8、读者资源,书籍资源,借书信息,还书信息进行管理,及时了解各个环节中信息的变更,要对因此而产生的单据进行及时的处理,为了提高图书馆或者企业内部对图书存销的自动化的管理,能够更快速地满足读者的要求,提高各种工作效率,现对其设计相应的系统,以达到上述的目的。图书馆管理系统的主要功能是实现图书馆图书的借阅和归还的管理自动化,图书新增及销毁的及时化,用户及图书信息的更新,围绕这些主要功能,本系统涉及到以下核心功能:借阅管理,归还管理,图书管理,学生管理。除了这些核心功能外,还包括一些基本和辅助的功能,它们是:图书信息管理,查询功能等。该系统设计的主要目标是:设计一个图书馆管理系统,该系统主要功能分为图书
9、查询、图书借阅归还和图书管理三大部分。在图书查询模块中要求用户能在浏览器中分别书名、著译者、类型等条件查询;在图书管理模块中要求能完成如办理借书证(即添加新的学生)、新书录入、借书还书登记、图书修改等日常管理功能。(1)网站前台设计:前台供学生使用,学生登录后有如下权利图书查询:用户可以按多种方式对图书库中的图书进行查询;借阅信息查询:用户可以查看自己的历史借阅信息。(2)网站后台设计:后台是供管理员使用的,管理员登陆后有如下权利 办理借阅证:将学生信息填写完整,在数据库中注册新用户;书籍的录入及删除:可以对现有图书库中的图书进行删除,也可以添加新江苏开放大学计算机本(论文) -6-书;借书还
10、书登记:普通用户借阅或归还图书时,管理员将在借阅信息表中添加相应的记录;图书修改:管理员可以对现有图书的详细信息进行修改。2 2可行性分析可行性分析 采用现代化统一的计算机信息网站系统,能够有效优化图书馆管理系统,使其高校的发挥最大的作用,能够迅捷的为读者提供相应的服务。开发本系统的可行性如下:2.12.1技术可行性技术可行性在软、硬件方面对系统的需求来看,由于中小企业信息化水平比较低,软硬件配置较差;而且资金实力并不雄厚。所以其对硬件的配置要求是尽可能的低,对软件配置的要求则是系统最好是基于日常办公软件如 OFFICE 系列上的应用系统,这样既不用花大量资金添置软件,员工又较容易学会使用应用
11、。本系统所实现的功能是一般性质的办公业务,总体的开发时间不用很长,它用到的硬件平台不高,软件基本上是开源且较易懂,项目开发过程中遇到的技术上的问题在网上或书上可找到,因此是在技术上是可行的。该系统所用的软件平台有数据库 MYSQL、开发工具包 WAMP2.0、服务器Apache5.0,浏览器 IE 8.0 都是开源的其中操作的细节和配置都易学。 本系统开发出来时在技术上具有代表当时办公自动化信息系统的先进性,本系统在建成后一段时间内,不会因技术的落后而需要大规模的调整,并且能够跟随时逐步的升级而保持整个系统的先进性。同时本系统对计算机硬件要求不算太高,运行速度较快,对企业办公很方便。本系统最重
12、要的是基于 php 的 Web 应用程序开发提供了一个框架。本系统的江苏开放大学计算机本(论文) -7-工作流程,分为以下步骤:(1) 浏览器向服务器发出请求,Controller 获得这些请求。(2) Controller 根据配置文件 php-config.xml 中的定义将这些请求发送到相应的 Action,对应图中的 Model。(3) Action 完成相应的业务逻辑处理后,将处理结果返回到 Controller。(4) Controller 再根据配置文件 config.xml 中的定义将处理结果显示到用户视图 View。本系统正是利用了 MVC 工作流程来完成此次设计的整个流程,
13、如图 2.2 所示:ViewJsp浏览器ControllerServletModelJavaBeanStruts-config.xml数据库图 2.2 本系统工作流图2.22.2经济可行性经济可行性 根据成本/效益分析法,本系统所需的软硬件资源都已具备,该系统简单易懂,本系统具有成本相对较低、利益高的特点,经济上可行。2.32.3操作可行性操作可行性 本系统开发的开发宗旨是以便捷为中心。开发后的系统应具有美观、大方、简单、易操作等优点,即使是不懂计算机的人员也可以根据系统提示使用和管理江苏开放大学计算机本(论文) -8-本系统,它的操作简单的特点使本系统在操作上可行。江苏开放大学计算机本(论文
14、)-9-3 3需求分析需求分析3.13.1图书馆管理系统需求概述图书馆管理系统需求概述图书馆管理系统的开发主要涉及到图书的管理,学生信息的管理,借阅信息的管理三大功能的数据管理。从管理的角度可将图书分为三类:图书信息管理、系统用户管理、读者数据管理。图书信息管理包括:添加新进图书、删除旧图书、修改图书信息。系统用户管理包括:修改用户信息、办理新用户、注销用户。读者数据管理主要包括:读者借阅信息的管理,借阅图书以及归还图书。图书借阅者的需求是查询图书室所存的图书。个人借阅情况以及个人信息的修改;图书馆工作人员对图书借阅者的借阅及还书要求进行操作,同时形成借书或还书报表给借阅者查看确认;图书管理人
15、员的功能最为复杂,包括对图书借阅者、图书进行管理和维护、以及系统状态的查询和维护等。图书馆管理员可以浏览、查询、添加、删除、修改的基本信息;浏览、查询、添加、删除和修改图书借阅者的基本信息;浏览、查询、添加、删除和修改图书的借阅信息。3.23.2功能需求功能需求在本系统中,对读者来说,他们关心的问题其实是如何方便的查询到图书馆中的书籍以及自己正在借阅或者已经借阅过一些什么书籍,也就是借阅历史,另一个关心的问题就是所借阅的图书是否到期等等。由此可以得出系统一些需求。3.2.1 与读者相关的基本功能元素(1)图书查询:应该能够按照图书不同信息对图书进行查询,如书名、作者、图书类型等条件查询。江苏开
16、放大学计算机本(论文)-10-(2)读者信息查询,读者信息的查询内容应包括以下几个方面:读者信息对读者的基本信息进行显示。书刊借阅对该读者借阅书籍记录进行查询。欠款查询对该读者超期图书的欠款情况的查看。3.2.2 与管理员相关的基本功能元素在面向系统的管理员来说,应注意如下几点:(1)图书馆中有哪些书籍,是否可以被借阅;(2)对学生的添加、修改和删除操作的方便性;(3)查看学生都借阅着哪些书籍;(4)对书籍的添加、修改和删除操作的方便性。3.2.3 总体系统的基本功能元素从以上问题出发,可以得出本系统应该具有的功能:(1)图书查询对馆内的图书进行查询;(2)借阅管理对读者的每一次借阅,还书进行
17、登记和管理;(3)图书管理对图书馆的书籍进行管理,添加、删除以及修改信息;(4)学生管理对学生进行管理,添加、删除以及修改信息;(5)欠款情况管理对读者借阅图书超期欠款的情况进行管理。3.33.3 性能需求性能需求3.3.1 人身和环境安全性需求(1)系统中的软件不构成对人身健康的损害;(2)系统中的软件失效时不造成财产的损失;江苏开放大学计算机本(论文)-11-(3)系统中的软件失效时不造成环境的破坏。3.3.2 可靠性和可用性需求(1)系统中的软件可以每天使用 24 小时,每年使用 365 天;(2)系统中的软件故障率小于等于 5%。3.3.3 容错性需求用户输入错误信息时,系统应提示,不
18、应崩溃。3.3.4 易用性软件适合 12-70 周岁的智力、视力、体力和肢体正常且具有图书借阅相关知识的人使用;3.3.5 易学性经过 1-2 天培训的使用者可以正常使用本软件。3.43.4 运行需求运行需求3.4.1 预期的物理环境(1)系统在常温环境下使用;(2)系统在洁净的室内使用。3.4.2 预期的技术环境(1)宽带网、1M 以上宽带互联网;(2)台式计算机:CPU P4 2.0G 以上,内存 256M 以上,硬盘 40G 以上,10M/100M 网卡,Windows 2000/2003/NT/XP 中文操作系统;(3)数据库管理系统:MySQL5.0 及以上。江苏开放大学计算机本(论
19、文)-12-4 4系统设计系统设计4.14.1 图书馆管理系统设计指导思想和原则图书馆管理系统设计指导思想和原则(1)利用软件开发现有软硬件环境,及先进的管理系统开发方案,从而到达充分利用现在资源提高系统开发水平和应用效果的目的。(2)系统应该符合软件工程开发的理论,开发方法等开发依据。(3)系统应满足图书馆管理工作的需要,并达到操作过程中的直观,方便,实用,安全,准确等要求。(4)系统应具备数据库维护功能,及时根据用户需求进行数据库的各种操作。(5)系统采用原型,实用模块化程序设计方法,便于系统功能的各种组合和修改,以及系统的测试与维护。(6)图书馆管理系统的设计应适合校园的发展。(7)图书
20、馆管理系统的设计应当遵循数据库设计规范。4.24.2 设计模式设计模式设计模式是面向对象的程序设计人员用来解决编程问题的一种形式化表示。本系统开发采用目前一种广泛流行的软件设计模式 MVC。MVC(ModelViewController)应用程序结构被用来分析分布式应用程序的特征。这种抽象结构能有助于将应用程序分割成若干逻辑部件,使程序设计变得更加容易。把一个应用的输入、处理、输出流程按照 Model、View、Controller 的方式进行分离,这样一个应用被分成三个层模型层、视图层、控制层。江苏开放大学计算机本(论文)-13-Model抽象系统应用功能;处理业务逻辑;数据持久化View抽
21、象数据表达;表示针对用户的数据;Contronller定义应用系统的行为将用户请求映射到模型更新;选择视图作为对请求的回应;更新状态查询调用请求选择视图图图 4-14-1 MVCMVC 模式模式MVC 模式的出现,很好的解决了传统开发 WEB 应用方式中存在的问题。M 代表模型(Model),包含完成任务所需要的所有的行为和数据;V 代表视图(View)界面,现实模型提供的数据;C 代表控制器(Controller),它将模型映射到界面中,处理用户的输入并相应请求。其模型的关系如图所示。在 MVC 模型中,三层各尽其职、相互独立,各层内部的改变不会影响到其它层,从而降低了数据表达、数据描述和应
22、该操作的耦合度,也能更好的实现开发中的分工,加速工程进度。4.34.3 图书馆管理系统总体功能概述图书馆管理系统总体功能概述图书管理系统包含五个模块分别是:系统登录、图书管理、学生管理、借阅信息管理、图书检索。系统登录模块:一般用户和管理员都必须登录才能进入系统,用户登录时在后台判断用户的权限类型,分为普通用户和管理员,普通用户可以对书籍进行浏览及个人借阅信息的查询,管理员可以对多种信息进行操作。江苏开放大学计算机本(论文)-14-图书管理模块:管理员通过验证界面进入系统后,进入到图书管理模块,可以对图书进行添加,删除、修改图书信息、查询、查看等一系列的操作。学生管理模块:管理员可以在此模块中
23、创建新的普通用户,并且可以对用户的信息进行修改,删除等操作。借阅信息管理模块:这是图书管系统中最重要的模块之一,管理员进入该模块中可以为普通用户办理借阅图书,归还图书的功能,并且能够实现还款的操作。图书检索模块:普通用户通过验证界面进入系统后,能够按照书名,作者等多种条件对图书进行查询操作,确保查询到的都是最新的信息。整体系统的功能模块如图 4-2 所示:图书馆管理系统登录系统模块借书证管理模块图书管理模块借阅信息模块图书检索模块图图 4-24-2 图书馆管理系统功能图图书馆管理系统功能图江苏开放大学计算机本(论文)-15-4.44.4 图书馆管理系统各功能模块概述图书馆管理系统各功能模块概述
24、4.4.1 系统登录模块用户进入系统时调用的一个模块。该模块根据用户输入的用户名、密码来判断用户的类型,跳转到该类用户的界面。本模块的功能点包括:(1)判断用户名和密码是否相符;(2)根据用户的权限类型,登录到系统的制定界面操作使用。登录功能模块流程图如图 4-3 所示:开始显示登录界面是否存在用户管理员界面结束是否是管理员用户界面YNNY图图 4-3 登录模块流程图登录模块流程图4.3.2 图书管理模块在本模块中图书馆工作人员可以对图书进行管理操作。本模块的功能点包括:(1)新书入库,将新进图书按其类型将图书的基本信息录入系统数据库; 江苏开放大学计算机本(论文)-16-(2)图书出库,某一
25、部分图书会随着时间的增长及知识的更新而变得不再有收藏的价值,或者图书被损坏,这些图书就要在图书库中除去。即从图书库中删除此图书记录;(3)新书编码,图书入库后,需要贴上条形码,以便以后提供借阅,本系统不涉及到条形码阅读器,只是假定此过程已经生成条形码。编码只是将条形码帖于书上以唯一标识图书;(4)图书信息修改,图书信息由于工作人员的疏忽,而出现录入错误,提供其图书 ID 就可以查看图书的基本信息并对其进行修改;图书管理功能模块流程图如图 4-4 所示:图书管理是否成功新书入库图书信息修改图书出库是否成功是否成功入库成功页面修改失败页面修改成功页面出库失败页面出库成功页面入库失败页面NYNNYY
26、开始结束图图 4-4 图书管理模块流程图图书管理模块流程图4.3.3 学生管理模块本模块主要是工作者对学生信息(读者借书证信息)进行管理。本模块的功能点包括:江苏开放大学计算机本(论文)-17-(1)办理借书证,为新读者办理借书证,填写用户基本信息;(2)注销借书证,输入读者借书证编号,根据借书证 ID 删除读者表中此借书证信息;(3)挂失借书证,主要是将借书证的状态改为挂失,更新读者表状态字段,有图书管理员操作;(4)修改图书证信息,由于工作人员的疏忽,而出现办理借书证时录入信息有误,则可根据借书证编号对其信息进行查看和修改。借书证管理功能模块流程图如图 4-5 所示:借书证管理是否成功借书
27、证办理读者信息修改借书证注销图书证挂失是否成功是否成功办理成功页面修改失败页面修改成功页面注销失败页面注销成功页面办理失败页面NYNNYY是否成功挂失失败页面挂失成功页面NY开始结束图图 4-54-5 借书证管理模块流程图借书证管理模块流程图4.3.4 借阅信息管理模块本模块主要是工作者对图书外借和归还进行管理。本模块的功能点包括:江苏开放大学计算机本(论文)-18-(1)图书借阅,记录借阅证编号和图书编号,进行借书过程。在数据库中插入一天借书记录,该记录包括图书 ID、借书证 ID、借阅日期、归还日期等;(2)图书归还,输入借书证编号,图书编号,根据输入的编号在借阅登记表中找到相应的记录,将
28、借阅记录删除,并将该记录相应的数据更新到历史借阅记录信息表中;(3)查看借阅记录,可以根据借书证 ID 以及图书 ID 查询借阅记录。(4)办理还款,如读者有图书超期的情况将会有欠款,可以根据借书证的ID 来为读者班里还款。借阅信息管理功能模块流程图如图 4-6 所示:江苏开放大学计算机本(论文)-19-借书信息管理办理借阅办理还款归还图书填写借书证编号和图书编号是否存在编号填写借书证编号和图书编号是否存在借阅记录归还成功归还失败是否已经借阅借阅失败借阅成功填写借书证编号是否存在编号是否有欠款还款失败还款成功YNYNNNNYYY开始结束图图 4-6 借阅信息管理模块流程图借阅信息管理模块流程图
29、4.3.5 图书检索模块使用该模块的用户有:读者和管理员。本模块的功能点包括:(1) 根据图书 ID 进行检索;(2) 根据图书名称进行检索;江苏开放大学计算机本(论文)-20-(3) 根据图书类型进行检索。(4) 根据图书作者或译者进行检索。图书检索功能模块流程图如图 4-7 所示:图书检索根据图书ID查询根据书名查询根据类型查询根据作者查询是否检索到图书图书列表提示页面YN开始结束图图 4-7 图书检索模块流程图图书检索模块流程图4.44.4 系统数据库设计系统数据库设计4.4.1 概念结构设计(1)实体图学生:学生属性有学号、姓名、密码、性别、学院、班级、电话、email、宿舍、地址、已
30、借书数量、创建日期。学生实体图如图 4-8 所示:学生学号创建日期已借书数量地址宿舍email电话班级学院性别密码姓名江苏开放大学计算机本(论文)-21-图图 4-8 学生实体图学生实体图图书:图书属性有图书编号、书名、作者、类别、单价、出版社、出版日期、总数量、当前数量、购买日期、内容摘要。图书实体图如图 4-9 所示:图图 4-9 图书实体图图书实体图(2)ER 图根据以上实体图,分析了各个实体的属性,根据这些属性,可以得到系统的ER 图,如图 4-10 所示1nnn学生图书图书编号内容摘要购买日期当前数量总数量出版日期出版社单价类别作者书名属于班级借书日期江苏开放大学计算机本(论文)-2
31、2-1n图图 4.8 系统系统 E-R 图图4.4.2 逻辑结构设计根据上述功能模块的需求,设计如下主要数据库表:表表 4.1 图书信息表图书信息表(t_book)字段英文名称字段英文名称字段中文名称字段中文名称字段类型字段类型字段约束字段约束是否可为空是否可为空Book_numBook_num图书编号Varchar2(15)主键否Book_nameBook_name书名Varchar2(20)否WriterWriter作者Varchar2(10)否Sort_idSort_id类加 IDVarchar2(5)否表表 4.14.1 图书信息表图书信息表(t_book) 续表续表 0101Pric
32、ePrice单价Number(5.2)是Pub_companyPub_company出版社Varchar2(20)是Pub_datePub_date出版日期Date是Total_numTotal_num总数量Number(3)否借阅图书学生属于还书日期超期罚款江苏开放大学计算机本(论文)-23-Current_numCurrent_num当前数量Number(3)否Buy_dateBuy_date入库日期Date否BriefBrief内容摘要Varchar2(100)是表表 4.24.2 学生信息表学生信息表 (t_student)(t_student)字段英文名称字段英文名称字段中文名称字段
33、中文名称字段类型字段类型字段约束字段约束是否可为空是否可为空Student_numStudent_num学号Varchar2(15)主键否Student_nameStudent_name姓名Varchar2(10)否PasswordPassword密码Varchar2(20)否Academy_idAcademy_id学院 IDVarchar2(10)否Class_idClass_id班级 IDVarchar2(10)否SexSex性别Varchar2(2)是TelephoneTelephone电话Varchar2(15)是EmailEmailEmailVarchar2(20)是Lended_n
34、umLended_num已借书数量Number(2)默认为 0否Create_dateCreate_date创建日期Date否表表 4.34.3 借阅信息表借阅信息表(t_book_studentt_book_student)字段英文名称字段英文名称字段中文名称字段中文名称字段类型字段类型字段约束字段约束是否可为空是否可为空IdIdID 号Varchar2(35)主键否Book_idBook_id图书编号Varchar2(15) 否Student_idStudent_id学号Varchar2(15)否江苏开放大学计算机本(论文)-24-borrow_dateborrow_date 借书日期Da
35、te否return_datereturn_date 还书日期Date否MoneyMoney超期罚款Number(5.2)否表表 4.44.4 管理员表管理员表(t_admint_admin)字段英文名称字段英文名称字段中文名称字段中文名称字段类型字段类型字段约束字段约束是否可为空是否可为空Admin_idAdmin_id管理员 IDNumber(5)主键否Admin_nameAdmin_name管理员姓名Varchar2(10) 否Admin_passwordAdmin_password管理员密码Varchar2(20)否表表 4.54.5 学院表学院表(t_admint_admin)字段英文
36、名称字段英文名称字段中文名称字段中文名称字段类型字段类型字段约束字段约束是否可为空是否可为空Academy_idAcademy_id学院 IDVarchar2(10)主键否Academy_nameAcademy_name学院名Varchar2(30) 否表表 4.64.6 班级表班级表(t_classt_class)字段英文名称字段英文名称字段中文名称字段中文名称字段类型字段类型字段约束字段约束是否可为空是否可为空Class_idClass_id班级 IDVarchar2(10)主键否Class_nameClass_name班级名Varchar2(30)否Academy_idAcademy_i
37、d所属学院 IDVarchar2(10) 否江苏开放大学计算机本(论文)-25-表表 4.74.7 图书类别表图书类别表(t_admint_admin)字段英文名称字段英文名称字段中文名称字段中文名称字段类型字段类型字段约束字段约束是否可为空是否可为空Sort_idSort_id类别 IDVarchar2(5)主键否Sort_nameSort_name类别名Varchar2(20) 否江苏开放大学计算机本(论文)-26-5 5系统实现系统实现5.15.1系统的软件结构系统的软件结构处理静态 WEB 是由 Web 浏览器向 Web 发送静态页面, Web 服务器直接对发送的静态网页进行处理。处理
38、动态 WEB 数据库查询的过程是:当 Web 浏览器向 Web 服务器发送请求时,动态网页的处理流程是,屏蔽掉 HTML 语言,只输入动态网页文件,由 Web 服务器向数据库中传递信息,经过数据库的处理返回数据集,Web 应用服务器再把含有程序代码的动态网页转换为静态网页返还给 Web 浏览器。这就是用动态网页对数据库进行查询并将数据返还给浏览器处理的全过程,具体见图 5-1 所示。数据库Web浏览器Web浏览器Web服务器 应用程序服务器发送请求返回响应查询数据返回数据集图图5-1数据库查询示意图数据库查询示意图5.25.2登录系统模块的实现登录系统模块的实现本模块主要是用户通过图书馆管理系
39、统的首页进入该系统。用户输入正确的用户名和密码,如果登录信息有错误,则系统提示登录错误信息,并且禁止系统江苏开放大学计算机本(论文)-27-用户进行任何操作。若登录信息正确,系统会根据用户的身份进行相应权限的判断,读者进入前台系统,管理员进入后台系统。图书馆系统登录主页面如图 5-2所示。图图 5-2 图书馆管理系统登录界面图书馆管理系统登录界面其实现的代码如下:Action 层:public String login() boolean flag = iss.login(admin);if(flag) return success; message = 用户名或口令错误!;return fa
40、il;Service 层:public boolean login(TAdmin admin) TAdmin a = isd.login(admin);if(a != null) return true;return false;Dao 层:public TAdmin login(TAdmin admin) Session session = this.getHibernateTemplate().getSessionFactory().openSession();Query q = session.createQuery(from TAdmin a where a.adminName = ?
41、 and a.adminPassword = ?).setString(0, admin.getAdminName().setString(1, admin.getAdminPassword();江苏开放大学计算机本(论文)-28-TAdmin a = (TAdmin)q.uniqueResult();return a;5.35.3图书管理模块图书管理模块的实现的实现图书管理模块主要分为图书入库、查看图书、统计图书,其中图书入库是往图书管理数据库中添加图书信息。看图书功能中可以查看图书详细信息,并对图书信息进行修改或删除某些废弃图书信息。5.3.1图书入库功能的实现点击添加图书功能,填写图书基
42、本信息,为图书选择类型,类型是与数据库交互动态生成的下拉列表,具体界面如图 5-3 所示。图图 5-3 图书入库界面图书入库界面其实现的代码如下:public String addInfoBook() this.sortList = ibs.listBookSort();return add;江苏开放大学计算机本(论文)-29-public List listBookSort() return this.getHibernateTemplate().find(from TSort tsort);public String addSaveBook() ibs.saveBook(book);boo
43、k = null;bookList = this.listBook();return Book;public void saveBook(TBook book) Date now = new Date();book.setBuyDate(now);book.setCurrentNum(book.getTotalNum();ibd.saveBook(book);public void saveBook(TBook book) this.getHibernateTemplate().save(book);5.3.2图书维护功能的实现点击图书维护功能,展示所有图书的信息列表,在每个图书信息行后提供删
44、除和修改操作功能,并且可以单击选定某一个图书信息后的详细信息进行详细查看图书信息。具体图书列表界面如图 5-4 所示图图 5-4 图书列表界面图书列表界面其实现的代码如下:public String listAllBook() bookList = this.listBook();return Book;public List listBook(TBook book, Page page) String hql = from TBook tb where 1=1;if(book!=null) if(book.getBookNum() != null & 江苏开放大学计算机本(论文)-30-!.
45、equals(book.getBookNum().trim() hql = hql + and tb.bookNum = + book.getBookNum()+;if(book.getBookName() != null & !.equals(book.getBookName().trim() hql = hql + and tb.bookName = + book.getBookName()+;if(book.getWriter() != null & !.equals(book.getWriter().trim() hql = hql + and tb.writer = + book.g
46、etWriter()+; if(!book.getSortId().getSortId().trim().equals(-1) hql = hql + and tb.sortId.sortId = + book.getSortId().getSortId()+;hql = hql + order by tb.bookName; else hql = hql + order by tb.buyDate desc;Session session = this.getHibernateTemplate().getSessionFactory().openSession();Query q = ses
47、sion.createQuery(hql);q.setFirstResult(page.getStartRow();q.setMaxResults(5);List list = q.list();return list;(1)删除图书功能的实现管理员删除图书,删除时可删除一个,也可同时多选删除,其实现的代码如下:public String deleteOneBook() ibs.delBookById(bookNum);bookList = this.listBook();return Book;public String deleteMoreBook() ibs.delMoreBook(bo
48、okNums);bookList = this.listBook();return Book; public void delBookById(String bookNum) this.getHibernateTemplate().delete(this.getHibernateTemplate().get(TBook.class, bookNum); public void delMoreBook(String bookNums) for(int i=0; ibookNums.length;i+) 江苏开放大学计算机本(论文)-31-this.getHibernateTemplate().d
49、elete(this.getHibernateTemplate().get(TBook.class, bookNumsi); (2)修改图书信息功能的实现在管理员修改图书信息时,跳转到图书信息详细表单中,列出所要修改图书的详细信息,并可以进行修改,则修改界面如图 5-5 所示。图图 5-5 修改图书信息界面修改图书信息界面其实现的代码如下:public String modifyInfoBook() this.sortList = ibs.listBookSort();book = ibs.queryOneBookById(bookNum);return modifyInfo;public S
50、tring modifySaveBook() ibs.modifyBook(book);book = null;bookList = this.listBook();return Book;江苏开放大学计算机本(论文)-32-public TBook queryOneBookById(String bookNum) TBook book = (TBook)this.getSession().createQuery(from TBook tb where tb.bookNum = ?).setString(0, bookNum).uniqueResult();this.getSession().
51、close();return book;public void modifyBook(TBook book) this.getHibernateTemplate().update(book);(3)查看图书详细信息功能的实现在管理员点击详细信息时,跳转到某图书信息详细表单中,列出所选图书的详细信息,则显示界面如图 5-6 所示。图图 5-6 图书详细信息界面图书详细信息界面其实现的代码如下:public String infoDetailBook() book = ibs.queryOneBookById(bookNum);return Detail;public TBook queryOne
52、BookById(String bookNum) TBook book = (TBook)this.getSession().createQuery(from TBook tb where tb.bookNum = ?).setString(0, bookNum).uniqueResult();this.getSession().close();return book;江苏开放大学计算机本(论文)-33-5.45.4学生管理模块的实现学生管理模块的实现学生管理模块主要分为添加学生、查看学生、修改学生,查看学生的详细信息。 5.4.1学生添加功能的实现点击添加学生,填写学生基本信息,具体界面如图
53、 5-7 所示。图图 5-7 办理借书证界面办理借书证界面其实现的代码如下:public String addInfoStudent() this.academyList = iss.listAllAcademy();return add;public void addStudent(TStudent student) Date now = new Date();江苏开放大学计算机本(论文)-34-student.setCreateDate(now);student.setLendedNum(0);isd.saveStudent(student);public List listAllAcad
54、emy() return this.getHibernateTemplate().find(from TAcademy ta);public List listAllClass() return this.getHibernateTemplate().find(from TClass tc);public void saveStudent(TStudent student) this.getHibernateTemplate().save(student);5.4.2学生维护功能的实现点击学生维护功能,展示所有读者的信息列表,在每个读者信息行后提供删除和修改操作功能,并且可以单击选定某一个读者
55、信息后的详细信息进行详细查看读者信息。具体读者列表界面如图 5-8 所示图图 5-8 读者列表界面读者列表界面其实现的代码如下:public String listAllStudent() studentList = this.getStudentListByPage();return Student;public List listAllStudent(Page page) Session session = this.getHibernateTemplate().getSessionFactory().openSession();Query q = session.createQuery(
56、from TStudent ts);q.setFirstResult(page.getStartRow();q.setMaxResults(5);List list = q.list();江苏开放大学计算机本(论文)-35-return list;(1)删除学生功能的实现管理员删除读者,删除时可删除一个,也可同时多选删除。其实现的代码如下:public String deleteOneStudent() iss.deleteOneStudent(studentNum);studentList = this.getStudentListByPage();return Student;public
57、 String deleteMoreStudent() iss.deleteMoreStudent(studentNums);studentList = this.getStudentListByPage();return Student;public void deleteOneStudent(String studentNum) this.getHibernateTemplate().delete(this.getHibernateTemplate().get(TStudent.class, studentNum);public void deleteMoreStudent(String
58、studentNums) for(int i=0;istudentNums.length;i+) this.getHibernateTemplate().delete(this.getHibernateTemplate().get(TStudent.class, studentNumsi);(2)修改学生信息功能的实现在管理员修改学生信息时,跳转到学生信息详细表单中,列出所要修改学生的详细信息,并可以进行修改,则修改界面如图 5-9 所示。江苏开放大学计算机本(论文)-36-图图 5-9 修改读者信息界面修改读者信息界面其实现的代码如下:public String modifyInfoStud
59、ent() this.student = iss.getStudentByid(studentNum);this.academyList = iss.listAllAcademy();this.classList = iss.listClassById(student.getAcademyId().getAcademyId();return modifyInfo;public String modifySaveStudent() iss.modifyStudentByid(student);student = null;studentList = this.getStudentListByPa
60、ge();return Student;public TStudent getStudentByid(String studentNum) return (TStudent)this.getHibernateTemplate().get(TStudent.class, studentNum);public void modifyStudentByid(TStudent student) this.getHibernateTemplate().update(student);江苏开放大学计算机本(论文)-37-(3)查看读者详细信息功能的实现在管理员点击详细信息时,跳转到某读者信息详细表单中,列
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 承揽合同范例广告墙
- 电车出租销售合同范例
- 解除房屋租赁合同通知书
- 自媒体主播合作合同模板
- 翡翠采购加工合同模板
- 2024年度赠与合同赠与物的交付与过户
- 威海市贸促会下载专区商标许可合同
- 农产品加工设备购置与合作生产合同2024
- 苗圃苗木质量检测与评估2024年度合同
- 租赁豪华公寓合同模板
- 电力安全事故典型案例分析
- 2024年四川省宜宾市中考地理试卷(含答案与解析)
- 电力设备预防性试验规程
- 4.3《课间》 (教案)-2024-2025学年一年级上册数学北师大版
- GB/T 44312-2024巡检机器人集中监控系统技术要求
- 福建省历年中考语文现代文阅读真题17篇(含答案)(2003-2022)
- 侵入性操作相关感染防控
- 小学科学评课稿科学课
- 2024全科医学科理论考试试题及答案
- 2024年下半年教师资格考试初中体育与健康学科知识与教学能力测试试卷与参考答案
- 语文教师职业生涯规划
评论
0/150
提交评论