




已阅读5页,还剩76页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
毕业设计题目:基于JSP技术的图书馆管理系统的设计与实现申请学位 系 别 专 业 学生姓名 学 号 导师姓名 IV【摘 要】图书馆管理系统是一种典型的信息管理系统,其开发主要包括后台的数据库的建立、维护以及前端的相应应用程序的开发。在图书馆管理系统中,对读者来说,他们关心的问题其实是如何方便的查询到图书馆中的书籍以及自己正在借阅或是已经借阅过些什么书,所借的书是否到期等,对管理员来说,他所关心的问题是图书馆中有些什么书,它们都存放在那里,是不是可以被借阅,发放的的读者证有那些,如何管理这些读者证等。因此本系统主要实现了五个模块的功能:图书查询、借阅管理、图书管理、借阅证管理、读者规则管理。本文介绍了图书馆管理系统的设计与实现过程,包括数据库、应用服务器、Web服务器的设计与实现。本系统是基于B/S结构下开发的,采用的是WindowsXP操作系统用Java、JSP、Dreamweaver+Mysql Server开发。系统前台开发页面用Dreamweaver设计,当网页页面元素需要调用数据库的数据时,通过JSP服务器调用JavaBean组件提取数据库数据返回前台显示。关键字:图书馆、数据库、B/S、JSP、JavaBean【Abstract】The administrative system of the library is a kind of typical information management system ,which mail development includ setting-up and database in backstage, and the development application program in front stage. In the administrative system of the library, to the reader how to inquiry the books in the library in convenient and what books they are inquriying or have borrowed already,and the have borrowed is expire. These issues are most cared about to them.For administrator, what issues he care about includeing what books library have, where are they deposit in, if they can be borrowed, is there any reader card have granted, how to manage these reader cards ,etc.So this system has realized the function of five pieces of module mainly: Books inquire , borrow management , taking care of books , borrow card management , readers rule manage.This text has introduced the design and of realize the administrative system of the library , including the design and realize of the database , the application server, , Web server and realizing. This system is developed under B/S structure, and using Java,JSP,Dreamweaver and Mysql server in windowsXP operating system. We used Dreamweaver to design the systematic front dest develops pages,and We used JSP server to callback the JavaBean package to get data in the library and return to front desk.When the page element of the webpage needs to transfer the data of the database.Key word: Library , database , B/S , JSP , JavaBean目 录【摘 要】I【Abstract】II一、前言1二、关键技术2(一)、JSP技术2(二)、JavaBean2(三)、JDBC3(四)、Servlet3三、系统概述3(一)、系统描述3(二)、系统任务3(三)、设计目标3四、需求分析3(一)、功能需求3(二)、环境需求3(三)、数据要求3(四)、功能模块划分3五、概要设计3(一)、设计思想3(二)、各个数据表的结构表3(三)、模块设计及功能3六、详细设计3(一)、详细设计概述3(二)、数据库连接组件31图书数据组件32馆藏数据组件33借阅数据组件34读者数据组件3(三)、设计与编写各模块3七、系统测试3(一)、测试目的3(二)、测试环境3(三)、测试方案3(四)、设计测试用例3八、总结3九、参考文献3十、致谢3一、前言随着社会的发展,人们对知识的需求也不断地增长。在这种形势下,书籍就渐渐地成为人们获取并增长知识的主要途径,而图书馆就自然而然地在人们的生活中占据了一定的位置,如何科学地管理图书馆不但关系到读者求知的方便程度,也关系到图书馆的发展,因此,开发一套完善的图书馆管理系统就必不可少了,本文介绍了在WindowsXP及Java、JSP、Dreamweaver+Mysql Server环境下采用“自上而下地总体规划,自下而上地应用开发”的策略开发本系统的详细过程,提出实现图书馆信息管理、资源共享的基本目标,从而推动迈向数字化图书馆的步伐,并阐述系统结构设计和功能设计,从图书的入库登记到查询浏览,从借书证发放到图书的借阅,形成了一个整体自动化管理模式,从软件工程的角度进行了科学而严谨的阐述。图书馆作为一种信息资源的集散地,图书和用户借阅资料繁多,包含很多的信息数据的管理,现今,有很多的图书馆都是初步开始使用,甚至尚未使用计算机进行信息管理。根据调查得知,他们以前对信息管理的主要方式是基于文本、表格等纸介质的手工处理,对于图书借阅情况(如借书天数、超过限定借书时间的天数)的统计和核实等往往采用对借书卡的人工检查进行,对借阅者的借阅权限、以及借阅天数等用人工计算、手抄进行。数据信息处理工作量大,容易出错;由于数据繁多,容易丢失,且不易查找。总的来说,缺乏系统,规范的信息管理手段。尽管有的图书馆有计算机,但是尚未用于信息管理,没有发挥它的效力,资源闲置比较突出,这就是图书馆管理系统的开发的基本环境。1 数据处理手工操作,工作量大,出错率高,出错后不易更改。图书馆采取手工方式对图书借阅情况进行人工管理,由于信息比较多,图书借阅信息的管理工作混乱而又复杂;一般借阅情况是记录在借书证上,图书的数目和内容记录在文件中,图书馆的工作人员和管理员也只是当时对它比较清楚,时间一长,如再要进行查询,就得在众多的资料中翻阅、查找了,造成查询费时、费力。如要对很长时间以前的图书进行更改就更加困难了。2 基于这一问题,我认为有必要建立一个图书馆管理系统,使图书管理工作规范化,系统化,程序化,避免图书管理的随意性,提高信息处理的速度和准确性,能够及时、准确、有效的查询和修改图书情况。二、关键技术(一)、JSP技术JavaServer Pages 技术是一个纯Java平台的技术,它主要用来产生动态网页内容。在传统的网页HTML文件中加入Java程序片段和JSP标记,就构成了JSP网页。Web服务器接收到访问JSP网页的请求时,首先执行其中的程序片段,然后将执行结果以HTML格式返回给客户。JSP是基于Java Servlet以及整个Java体系的Web开发技术,利用这一技术可以建立先进、安全、快速和跨平台的动态网页。JSP在多个方面加速了动态的Web页面的开发:程序写一次,到处可以运行。JSP在设计时,充分考虑到应用平台的无关性。依赖于Java的可移植性,JSP得到目前许多流行操作平台的支持,可在Apache、NetScape、IIS等服务器上执行。执行速度快。JSP页面只需编译一次转化为Java字节代码,其后一直驻留于服务器内存中,加快了对JSP页面的响应速度。若不考虑JSP页面第一次编译所花的时间,则JSP的响应速度要比ASP快得多。Java的优势。JSP技术是用Java语言作为脚本语言的。跨平台、成熟、健壮、易扩充的Java技术使得开发人员的工作在其他方面也变得容易和简单。Java语言通过提供防止内存泄漏的方法,在内存管理方面大显身手。加之,JSP为应用程序提供了更为健壮的意外事件处理机制,充分发挥了Java的优势。JSP标签可扩充性和跨平台的可重用性。JSP技术能够使开发者扩展JSP标签得以应用,JSP开发者能定制标签库,大大减少对脚本语言的依赖。由于定制标签技术,使网页制作者降低了制作网页和向多个网页扩充关键功能的复杂程度。JSP组件(企业Javabeans,JavaBeans或定制的JSP标签)都是跨平台可重用的。Javabeans和企业Javabeans组件可以访问传统的数据库,并能以分布式系统模式工作于UNIX和WINDOWS平台。9(二)、JavaBeanJSP网站吸引人的地方之一就是能结合JavaBean技术来扩充网站中程序的功能。JavaBean 是一个可重复使用、且跨平台的软件组件。JSP搭配JavaBean来使用,有以下优点:可将HTML和Java程序分离,为了日后维护的方便,如果把所有的程序代码(Html和Java)写到JSP网页中,则会使整个程序代码又多又繁杂,造成日后维护上的困难。我们可以将常用到的程序写成JavaBean组件,JSP网页只要调用JavaBean组件来执行我们所要的功能,不用再重复写相同的程序,这样一来,可以节省开发所需的时间。7(三)、JDBCJDBC由一组Java语言编写的类和接口组成,使用内嵌式的SQL,主要实现三方面的功能:建立与数据库的连接,执行SQL声明以及处理SQL执行结果。JDBC支持基本的SQL功能,使用它可方便地与不同的关系型数据库建立连接,进行相关操作,并无需再为不同的DBMS分别编写程序。10(四)、ServletServlet是是JAVA 2.0中新增的一个全新功能。它是与Applet相对应的,Applet是运行在客户端的浏览器,而Servlet是运行在服务器端的。 JAVA Servlets 是运行在请求/面向请求服务器上的模块。也就是说:servlet能够象CGI脚本一样扩展WEB服务器功能,但是servlet占用很少密集资源,当一个服务器装载servlet时, 它运行servlet的 init 方法. 这个方法不能反复调用,一旦调用就是再装载servlet. 直到服务器调用 destroy 方法卸载 servlet后才能再调用.每个新的CGI要求在服务器上新增一个进程。如果多个用户并发地访问该程序,这些进程将消耗该Web服务器所有的可用资源,并且系统性能降低到极其低下的地步。有很多用CGI脚本编制的一些站点由于访问量剧增,性能迅速下降,这是CGI脚本一个缺点。 同时由于servlet 是用java编写的,因此是跨平台的。12 三、系统概述(一)、系统描述本系统是基于B/S结构下进行MIS系统开发的,利用Java和JSP的特性来设计结构合理的MVC架构并结合Java中间件软件开发高效的Web应用程序。本系统采用了JSP Model1体系,JSP页面独自响应请求并将处理结果返回客户,所有的数据存取都是由JavaBean来完成。8图3-1所示:关系数据库JSP浏览器JavaBeanJDBC图3-1 JSP Model1 体系结构(二)、系统任务本系统实现后,可以更加方便快捷为读者提供服务,进一步提高图书的利用率。使图书管理工作规范化,系统化,程序化,避免图书管理的随意性,提高信息处理的速度和准确性,能够及时、准确、有效的查询和修改图书情况。(三)、设计目标本系统的设计目标是借助网络,为图书馆建立一个信息管理系统,给图书管理和读者提供一个电子平台,将大大提高学校图书馆的管理水平和现代化程度。最终实现图书的借阅和管理信息化。四、需求分析(一)、功能需求在本系统中,对读者来说,他们关心的问题其实是如何方便的查询到图书馆中的书籍以及自己正在借阅或是已经借阅过些什么书,所借的书是否到期等。3由此可以得出系统在面向读者方面应该至少做到如下几点:1图书查询。2读者信息查询,读者信息的查询内容应包括下面的几个方面:1) 读者信息对读者的基本信息进行显示。2) 书刊借阅对该读者借阅过的所有书籍进行查询。3) 借阅历史查询该读者借阅过的所有书籍。4) 违章信息该读者的违章信息。5) 读者规则该读者所应用的规则。对系统的管理员来说,应该注意的是:1图书馆中有些什么书,它们都存放在那里,是不是可以被借阅;2本图书馆发放的读者证有那些,如何管理这些读者证;3这些读者证都借阅着那些书;4如何来确定这些读者证是否可用,以及借书的还期等。从以上问题出发,可以得出本系统应该具有的功能:1图书查询对馆内的图书进行查询。2借阅管理对读者的每一次借阅,还书进进登记和管理。3图书管理对图书馆的书籍进行管理。4借阅证管理对读者的借阅证进行管理。5读者规则管理设置和管理读者规则。 (二)、环境需求1、硬件环境CUP:至少PentiumIII800以上内存:至少128M以上硬盘:至少20G硬盘空间以上显示器:15显示器光盘驱动器:CD-ROM或DVD-ROM驱动器2、软件环境本系统在WindowsXP及Java、JSP、Dreamweaver+Mysql Server中实现。(三)、数据要求保证数据的安全性和完整性及权限的设置等等。(四)、功能模块划分本系统实现如下功能:图书查询、借阅管理、图书管理、借阅证管理、读者规则管理等。图书馆管理系统图书管理读者规则管理图书查询借阅管理借阅证管理图4-1 模块划分图五、概要设计(一)、设计思想1 利用软件开发现有软硬件环境,及先进的管理系统开发方案,从而达到充分利用现在资源提高系统开发水平和应用效果的目的。2 系统应该符合软件工程开发的理论,开发方法等开发依据。3 系统应满足图书馆管理工作需要,并达到操作过程中的直观,方便,实用,安全,准确等要求。4 系统具备数据库维护功能,及时根据用户需求进行数据库的各种操作。5 系统采用原型,使用模块化程序设计方法,便于系统功能的各种组合和修改,以及系统的测试与维护。5(二)、各个数据表的结构表(1)图书种类表(KJB2_KJXX_Book)图书种类表是用来记录一类图书这个实体的,比如说三国演义其实是一类书,因为它不仅仅是有一本,而是有很多本书都可以是三国演义。一类书和一本的书的关系有类似于Java中类和对象的关系。图书种类表中的每一行记录代表同一种书的各个属性。表5-1 图书种类表(KJB2_KJXX_Book)序号字段含义字段名类型宽度是否主码是否非空1书种类IDBookClassIDIntPKY2题名TitleVChar50Y3作者AuthorVChar504ISBN号ISBNVChar505出版发行项CBFXXVChar506载体信息ZTXXVChar507个人名称(等同责任者)DTZRZVChar508责任者ZRZVChar509中国图书分类法类号ZGTSFLFLHVChar5010科图图书分类法类号KTTSFLFLHVChar5011论题主题LTZTVChar5012附注项FZXVChar20013出版时间CBSJDataTime14单价DJNumber10.215赔偿金额PCJENumber10.2(2)馆藏地表(KJB2_KJXX_StorePlace)馆藏地表是一个字典表,它记录了图书馆的馆藏地信息。比如说,一个学校的图书馆可能有“开架借书馆”、“闭架借书馆”、“社科借书馆”等不同的馆藏地。馆藏地表的一行记录代表一个馆藏地。表5-2 馆藏地表(KJB2_KJXX_StorePlace)序号字段含义字段名类型宽度是否主码是否非空1馆IDStoreIDIntPKY2名称MCVChar50Y3位置WZVChar2004负责人FZRVChar505说明SMVChar200(3)馆藏表(KJB2_KJXX_Store)馆藏表的每一行记录其实表代着图书馆中的每一本在馆图书。表中的种类ID关联着图书表,通过这一个字段的关联,使这个表中的每一行记录都可以看成是每一个图书类的一个对象。这个表中的索取号是提供给读者借阅图书的。表5-3 馆藏表(KJB2_KJXX_Store)序号字段含义字段名类型宽度是否主码是否非空1书本IDBookIDIntPKY2种类IDBookClassIDIntY3馆IDStoreIDIntY4索取号SQHVChar50Y5条码号TMHVChar506年卷号NJHVChar507书刊状态ZTVChar50Y8入馆时间RGSJDataTimeY(4)读者(借阅证)表(KJB2_KJXX_Store)读者(借阅证)表代表读者这一个实体。读者在这里其实就被定义为本图书馆的借阅证持有者。每一个持证者。每一个持证者在本表中都表示为一行记录。从另一个角度来看,其实这个表是记录也是所有的借阅证的集合。在图书借阅和读者信息查询时将使用到此表。表5-4读者(借阅证)表(KJB2_KJXX_Store)序号字段含义字段名类型宽度是否主码是否非空1读者IDReaderIDIntPK2证件号ZJHVChar503工号GHVChar504办证日期BZRQDateTime5生效日期SXRQDateTime6过期日期GQRQDateTime7押金YJVChar508手续费SXFVChar509累计借书LJJSInt10读者规则RuleIDInt11状态ZTVChar50(5)读者规则表(KJB2_KJXX_Rule)读者规则表表示的是规则这一实体。读者规则其实就是对读者借阅权限进行划分,每一种权限的借阅时间,借阅馆藏,可续借时间和次数都不尽相同。对于图书馆来说,每位读者可以借阅的图书等级可能会不同。表5-5读者规则表(KJB2_KJXX_Rule)序号字段含义字段名类型宽度是否主码是否非空1规则IDRuleIDIntPK2规则名称GZMCVChar503可借阅天数KJYSJInt4可借阅馆藏地IDKJYGCDIDVChar505续借天数KXJSJInt6最大续次数KXJCSInt7预约保留天数KYYSJInt(6)书籍借阅表(KJB2_KJXX_JYB)书籍借阅表代表的是书籍借阅这一个关系。它通过读者ID和书本ID,表示一本书被哪一个读者借阅了。系统在生成这一个关系表的记录时,会自动根据读者规则对到期时间等属性进行自动的填写。表5-6书籍借阅表(KJB2_KJXX_JYB)序号字段含义字段名类型宽度是否主码是否非空1借阅JYIDIntPK2读者ReaderIDInt3书本BookIDInt4借阅时间JYSJVChar505到期时间DQSJVChar506归还日期GHRQVChar507状态ZTVChar508续借次数XJCSInt(7)惩罚表(KJB2_KJXX_CFB)惩罚表的一行记录代表的是对读者的一次惩罚。当读者由于超期还书等原因而应该被罚款时,就要向这一张表中增加一条记录。表5-7 惩罚表(KJB2_KJXX_CFB)序号字段含义字段名类型宽度是否主码是否非空1惩罚IDCFIDIntPKY2读者IDReaderIDIntY3书本IDBookIDIntY4惩罚原因CFYYVChar505惩罚结果CFJGVChar506罚款金额FKJENumber7状态ZTVChar1(三)、模块设计及功能1.图书查询读者可以通过网络访问学校图书馆管理系统,并对馆内的图书进行查询,对查到的在馆图书可以进行借阅。查询借阅图书借阅图5-1 图书查询流程图2.借阅管理这一部分是对书籍借阅、书籍归还的管理,当读者借书的时候,图书馆管理员把书籍的编号和读者的借阅证号输入系统,当此次借阅符合借阅规则的时候,借阅成功。并将结果写入到数据库中。读者归还书籍时,将图书交给图书管理员,管理员把书籍的编号和读者的借阅证号输入系统,系统核对借阅规则,对违规(如超期)的读者进行罚款之类。6借阅成功输入读者证号和书籍索引号书籍借阅借阅管理归还成功输入读者证号和图书索引号书籍归还图5-2 借阅管理流程图3.图书管理图书管理主要实现的功能是对新购的图书进行入库和废书记录从库中删除。当新书被放入图书馆时,管理员登录进入系统,把图书的信息添加到图书馆管理系统中,并指定是放到哪一个藏书馆中。这时图书可以被读者查询到,并可以借阅。当要把一本废书删除时,图书管理员登录进入系统,查找到这一本书,并将其删除。这时,这一本图书将不再能被查询到。图书下架图书入库确定馆藏图书上架图书维护图书管理删除图书图5-3 图书管理流程图4.借书证管理本部分是对借阅证进行管理,并对读者的一些基本的信息进行维护,提供增、删、改等功能。每一个借阅证都要以某一个读者规则相应,读者规则决定读者可以借阅书籍的等级,如借书时间、借书种类等。当读者借阅证丢失时,可以进行挂失处理。持失之后借阅证失效。确定读者规则新增借阅证填写读者信息借阅证管理修改借阅证信息挂失删除图5-4 借书证管理流程图5.读者规则管理读者规则包括借阅时间,可借阅的图书数目,可借阅图书的书馆等。这一部分可以对读者规则进行管理,主要是增、删、改操作。修改规则删除规则给读者设置规则增加规则规则管理图5-5 读者规则管理流程图六、详细设计(一)、详细设计概述详细设计以概要设计为依据,进一步对系统每一个模块进行细化及对数据库的数据结构进行设计(二)、数据库连接组件 1图书数据组件该组件是BookBean类,根据java的规范,这个类实现在BookBean.java文件中,它继承了ParentBean,通过ParentBean中的getonePage()、insertRecord()、updatRecord()和deltetRecord()方法向数据库发送SQL语句并完成数据的查询、增加、删除和修改的操作。1.1用来查询一条数据的通用私有接口Private Hashtable searchOneData(String sql)该方法有一个参数,参数是一个字符串,表示要向数据库发送的一条SQL语句,这个SQL语句只能是一个查询语句,方法的返回值是一个Hashtable,在Hashtable中以键值对的方式表示了从数据库中选出的第一行记录。用Hashtable中的get(“FieldName”)方法可以得到该行记录的某一个记录的值。查询核心代码如下:function search()document.all.txt_type.value = ;document.all.txt_type1.value = ;document.all.txt_id.value = ;document.all.txt_edit.value = list;document.all.txt_search.value = 1;document.all.form1.action = index.jsp;document.all.form1.submit();1.2增加记录的公有接口Public int insert(Hashtable hash)该方法有一个参数,是java.util.Hashtable类,在调用该方法之前,先用hashtable的put方法将记录的字段名和该记录的值存入hashtable中,然后将这个hasttable作为参数传入到insert方法中。在insert方法的最后,调用了ParentBean中的insertRecord方法,insertRecord可以根据传入的参数自动地生成增加记录的SQL语句并通过JDBC发送到数据库。1.3删除记录的公有接口Public int delete(String id)该方法有一个参数id,该参数代表的是KJB2_KJXX_Book表中的ID字段,ID字段是这个表的主键,用这一个主键可以检索到表中的一条惟一的记录,通过这一主键,delete方法可以生成一条SQL语句,删除这一条记录。1.4修改记录的公有接口Public int update(Hashtable hash)Update方法是把要修改的记录的信息通过Hashtable的方式传给update,update通过调用ParentBean的updateRecord(vect)来实现其功能,updateRecord(vect)可以根据传入的Vector自动生成符合MySQL规范的SQL语句并发送给MySQL数据库。1.5查询记录的公有接口Public Vector getData(int page)getData是一个返回数据集的方法,该方法有一个参数,代表取得第几页数据,通过设置这个页码,可以实现结果集的分页。getData调用了ParentBean里的getOnepage方法来实现其功能。2馆藏数据组件对馆藏表KJB2_KJXX_Store操作的连接组件是StoreBean类,实现在StoreBean.java中。类似于BookBean,它也继承了ParentBean中的getOnePage()、insertRecord()、updataREcord()和deleteRecord()方法来向数据库发送SQL语句并完成数据的查询、增加、删除和修改等操作。这个类的主要功能是对馆藏表进行增、删、改操作。其实现也类似于BookBean,但是其中一个私有方法与BookBean不同。Private Vector searchData(String sql)这个方法以一个SQL语句为参数,并返回一个Vector型的对象作为结果集。该方法首先用JDBC向数据库发送SQL语句,取得结果集,并把结果集的每一行记录用Hashtable封装,然后把选出的多行记录以Hashtable的形式放到一个Vector里面作为返回结果。3借阅数据组件该组件以BorrowBean来实现,这个类同样继承了ParentBean。在BorrowBean类中,不仅仅实现了数据表的增删改的代码,还对借阅的操作过程进行了程序化。可以说,这一个组件是一个面向事务流程的组件。利用ParentBean来实现事务,主要是通过调用这4个方法来实现的:creatStatement();clearBatch();addBatch();int result=executeBatch();closeStm();利用addBatch()可以同时向Staement添加多条SQL语句,使用executeBatch()实现SQL语句的同时执行。如果出错,则自动取消所有的SQL语句执行。这4个方法是通过直接调用JDBC的事务处理方法来实现对事务的管理。借阅组件核心代码如下:BorrowBean bb = new BorrowBean();int errcode = 0;DealString ds = new DealString();String strType = ds.toString(String)request.getParameter(txt_type);/取得菜单类别String strType1 = ds.toString(String)request.getParameter(txt_type1);/取得菜单类别String strID = ds.toString(String)request.getParameter(txt_id);/编号String strEdit = ds.toString(String)request.getParameter(txt_edit);/增删改类型/第几页String strPage = ds.toString(String)request.getParameter(txt_page);/取得表单参数String strZJH = (ds.toString(String)request.getParameter(txt_zjh);String strSQH = (ds.toString(String)request.getParameter(txt_sqh);String strJYSJ = ds.getDateTime();strJYSJ = strJYSJ.substring(0,10);/生成参数集Hashtable hash = new Hashtable();hash.put(ZJH,strZJH);hash.put(SQH,strSQH);hash.put(JYSJ,strJYSJ);4读者数据组件该组件以ReaderBean来实现。同样ReaderBean也继承了ParentBean。ReaderBean主要是提供对KJB2_KJXX_Reader表的读写操作。设计模式类似于BookBean。其主要的增、删、改方法如下:新增方法首先从传入的参数Hashtable中取出存放在其中的数据,调用ParentBean中的增加记录的方法来增加一条记录。修改方法也是从传入的参数Hashtable中取出要修改的数据,调用ParentBean中的修改记录的方法来修改指定的记录。删除方法就直接向数据库发送一条SQL语句删除某记录。(三)、设计与编写各模块(1)本系统的页面代码都是用JSP页面来写的,为管理上的方便,页面一般都遵循下列的规则:1. 同一模块的文件放到一个文件夹下。2. 由index.jsp文件对页面进行调度。3. List.jsp页面做列表显示。4. View.jsp页面显示单行记录的详细内容。5. Edit.jsp实现记录的增加和修改。6. Servlet.jsp实现对数据连接组件的调用,完成数据的写入操作。7. 其他的页面作为辅助页面,配合上述几个页面来使用。(2)简单介绍用户管理模块、借阅管理模块、和图书管理模块1用户查询模块当用户访问图书馆网站时,就能看到图5-1所示的页面。在这个页面中,查询的方式有书名、作者、主题3种。通过这3种方式类型,访问者在选择查询方式并输入查询内容之后,可以很直接地找到想要的书。图6-1 图书馆主页界面图图6-2 查询结果查询的主要页面有index.jsp、search.jsp、list.jsp、view.jsp。index.jsp用来调度所有的页面,search.jsp给用户显示一个查询接口,list.jsp用来显示查询到的结果列表。View.jsp用来显示查询到的图书的各种属性。由于查询功能不需要对记录进行增、删、改操作,因此这一模块主要就是由列表页和查看页组成。2借阅管理模块借阅管理功能是提供给管理员使用的。当有一个读者要借书的时候,读者把图书和读者证交给管理员,管理员根据书和证件上的ID号,填入图5-3所示的界面中,单击“提交”按钮,就完成了一次借阅。图6-3 书籍借阅3图书管理模块书库管理是对存放图书的书库进行管理,书库其实是一个字典表,里面罗列了存放图书的书库的属性。书库管理的页面是非常典型的单表增、删、改实现的例子。书库管理页面由index.jsp、list.jsp、view.jsp、edit.jsp、servlet.jsp这5个标准文件组成的。例如调用edit.jsp向主表加入一条记录。然后在主表的list.jsp页中就会多出一个“上架”的操作,如图5-4所示:图6-4 书籍管理主表页面单击“上架”则进入了子表的操作,这里对子表的增、删、改操作都是针对跟主表的这一条记录相关联的那些记录。可以增加或修改一条记录,如图5-5所示:图6-5 上架信息七、系统测试(一)、测试目的依据用户需求、概要设计和详细设计说明,设计测试用例,对软件系统进行测试。其目的是:1. 测试是为了发现程序中的错误而执行程序的过程;2. 好的测试方案是极可能发现迄今为止尚未发现的错误的测试方案;3. 成功的测试是发现了至今为止尚未发现的错误的测试。(二)、测试环境WindowsXP及Java、JSP、Dreamweaver+Mysql Server中实现。测试的重点是系统底层基本功能模块。(三)、测试方案测试方案是测试阶段的关键技术问题。为了提高测试效率降低测试成本,本测试方案采用黑盒法设计基本的测试方案,在黑盒法测试方案中,采用等价划分技术,把所有可能的输入数据(有效的和无效的)划分成几等价类,再根据等价类的划分来测试系统各模块。(四)、设计测试用例 基于测试原则,本系统在设计测试用例时采用了黑盒测试技术中的划分等价类方案,其测试用例设计如下:1、 划分等价类输入条件合理等价类不合理等价类作者1.由字母、数字开头的字母、数字串2.不是由字母、数字开头的字母、数字串办证日期3.时间类型4. 非时间类型证件号5.由字母、数字开头的字母、数字串6.不是由字母、数字开头的字母、数字串单价7.大于零的数8.等于零的数9.小于零的数10.非数字入馆时间11.时间类型12. 非时间类型读者ID13.由字母、数字开头的字母、数字串14.不是由字母、数字开头的字母、数字串2、合理类测试用例测试数据期望结果覆盖范围xiaosan(作者)输入有效12005-5-15(办证日期)输入有效3S1(证件号)输入有效55(设备数量)输入有效72005-5-10(入馆时间)输入有效11001(读者ID)输入有效133、不合理类测试用例测试数据期望结果覆盖范围o周(作者)输入无效22005-123-5(办证时间)输入无效4#(证件号)输入无效60(单价)输入无效8-5(单价)输入无效9Abc(单价)输入无效1034(读者ID)输入无效14八、总结通对对基于JSP的图书馆管理系统的设计与实现,感受颇深,获益匪浅,同时获得了许多项目设计与开发的方法和经验。1合理的开发原则 MIS系统的开发,符合以下原则:1) 创新原则,体现先进性。计算机技术的发展十分迅速,要及时了解新技术,使用新技术,使目标系统较原来系统有质的飞跃。2) 整体原则,体现完整性。企业管理可以理解为一个合理“闭环”系统。目标系统应当是这个“闭环”系统的完善。企业完整地实现计算机管理不一定必须在企业的各个方面同时实现,但必须在企业完整地设计系统的各个方面。3) 经济原则,体现实用性。大而全和高精尖并不是成功MIS衡量标准。事实上许多失败的MIS正是由盲目追求高新技术而忽视了其实用性。盲目追求完善的MIS而忽视了本单位的技术水平,管理水平和人员素质。2科学的开发过程科学的开发过程是目标系统开发成功的关键,往往引用软件工程的方法,从可行性研究开始,经过可行性研究,需求分析,总结设计,详细设计,编码,测试等主要设计阶段。同时对每一阶段都要认真设计及周密评审,目标系统才能完成。3良好的编程习惯编写程序要有良好的编程习惯,不可急功近利,盲目追求速度,而需统筹安排,考虑周到,有条不紊的进行。在软件开发的过程中,也应同步做好相应文档的编写。4全面有效的测试无论怎样强调软件测试的重要性和他对软件可靠性的影响都不过分。在开发大型软件系统的漫长过程中,面对着极其错综复杂的问题,人的主观认识不可能完全符合客观实,与工程密切相关的各类人员之间的通信和配合也不可能完美无缺,因此,在软件生命周期的每个阶段都不可
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 新解读《CB-T 429 - 1999单爪锚》新解读
- 化学●海南卷丨2022年海南省普通高中学业水平选择性考试高考化学真题试卷及答案
- 路基人字行骨架防护施工方案
- 基坑开挖工艺流程
- 北师大版(2019) 必修第三册 Unit 9 Learning Lesson 2 Language Learning Tips课件(内嵌音频)
- 基于双球模型改进的眼动追踪算法研究
- 浙江省丽水市2022-2023学年高二下学期普通高中期末教学质量检测化学试题(含答案)
- 汽车传感器与检测技术电子教案:地磁方位传感器
- 物理中考一轮复习教案 第三讲 熔化和凝固、升华和凝华、水循环
- 仓库扩容打折活动方案
- 医院培训课件:《多发性骨髓瘤》
- 西湖写景作文600字
- 电动车火灾安全培训课件
- 建筑项目招投标外文翻译外文文献英文文献
- 湖北省黄冈市(2024年-2025年小学五年级语文)人教版质量测试(下学期)试卷及答案
- 《我国上市公司财务舞弊探析案例-长园集团为例》14000字(论文)
- 世界古代史(二) 讲义 高三统编版2019必修中外历史纲要下册一轮复习
- 消防月课件:2024年21起典型火灾案例及消防安全知识专题培训
- OQC培训资料教学课件
- 2022年中华护理学会输液连接装置安全管理专家共识解读
- 木制品加工厂应急预案
评论
0/150
提交评论