基于JSP的图书管理系统的课程设计报告

时间:2024.4.20

课程设计报告

基于JSP的图书管理系统

专业班级:计科

姓 名:XXX

学 号:123456

指导老师:XXXX

20xx年1月1日

第一章 绪 论

1.1 课题的研究背景

图书馆在正常运营中面对大量书籍、读者信息以及两者间相互联系产生的借书信息、还书信息。现有的人工记录方法既效率低又错误过多,大大影响了图书馆的正常管理工作。因此需要对书籍资源、读者资源、借书信息、还书信息进行管理,及时了解各个环节中信息的变更,有利用管理效率的提高。

第二章 系统开发工具及相关技术介绍

2.1 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技术使得开发人员的工作在其他方面也变

2

得容易和简单。Java语言通过提供防止内存泄漏的方法,在内存管理方面大显身手。加之,JSP为应用程序提供了更为健壮的意外事件处理机制,充分发挥了Java的优势。

JSP标签可扩充性和跨平台的可重用性。JSP技术能够使开发者扩展JSP标签得以应用,JSP开发者能定制标签库,大大减少对脚本语言的依赖。由于定制标签技术,使网页制作者降低了制作网页和向多个网页扩充关键功能的复杂程度。JSP组件(企业Javabeans,JavaBeans或定制的JSP标签)都是跨平台可重用的。Javabeans和企业Javabeans组件可以访问传统的数据库,并能以分布式系统模式工作于UNIX和WINDOWS平台。

2.2 JDBC

JDBC由一组Java语言编写的类和接口组成,使用内嵌式的SQL,主要实现三方面的功能:建立与数据库的连接,执行SQL声明以及处理SQL执行结果。JDBC支持基本的SQL功能,使用它可方便地与不同的关系型数据库建立连接,进行相关操作,并无需再为不同的DBMS分别编写程序。[10]

2.3 MySQL

MySQL是一个多用户、多线程的SQL数据库,是一个客户机/服务器结构的应用,它由一个服务器守护程序mysqld和很多不同的客户程序和库组成。MySQL的快速和灵活性足以满足一个网站的信息管理工作。 因为许可证的灵活,任何人都可以以任何目的免费使用,修改,和分发 PostgreSQL,不管是私用,商用,还是学术研究使用。命令执行速度快,也许是现今最快的;简单有效的用户特权系统。MySQL使用完全免费,

3

使得其运用范围更加广泛。

2.4 TOMCAT

Tomcat服务器是Apache Group Jakarta小组开发的一个免费服务器软件,适合于嵌入Apache中使用,而且,它的源代码可以免费获得,你可以自由地对它进行扩充。Tomcat服务器的兼容性很好,如WebLogic服务器采用其为Web服务器引擎,Jbuilder将其作为标准的测试服务器,Sun公司也将其作为JSP技术应用的示例服务器。但是Tomcat服务器有众多大软件公司的支持,而且服务器的性能稳定,其发展前景很好。

2.5 Eclipse

Eclipse是一个非常优秀的集成开发环境,它旨在简化用于多操作系统软件工具的开发过程,可以用于管理多种开发任务,其中包括测试、性能调整以及程序调试等,而且还可以集成来自多个供应商的第三方应用程序开发工具。通过集成大量的插件,Eclipse的功能可以不断扩展,以支持各种不同的应用。

Eclipse平台是一个成熟的、精心设计的、可扩展的体系结构,其组成结构如图所示用 Eclipse开发的插件,可以适应多平台的需要 , 且具有良好的可扩展性和灵活性。

Eclipse 是一个开放源代码的、基于 Java 的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括 Java 开发工具(Java Development Tools,JDT)。

4

第三章 系统分析

3.1 系统的可行性分析

可行性分析是在进行初步调查后所进行的对系统开发必要性和可能性的研究,所以也称为可行性研究。信息系统也应从技术可行性,经济可行性和社会可行性三方面来论证。通过长时间的观察与实践,我认为图书馆管理系统的可行性分析如下:

3.1.1经济可行性分析

作为图书馆这样的商业性质较小的场所,其经济成分比重相对较少,主要是支出的费用:其中包括设备购置费、软件开发费用、管理和维护费、人员工资和培训费等。由于各个图书馆实行统一操作,系统共享,其设备购置,人员工资,维护费用相对较少,前期的资金投入主要集中于购置图书上。建立信息中心,可将来自各方面的信息集中管理,提高图书管理的计划性和预见性,快速地反馈市场信息。

3.1.2技术可行性分析

技术上的可行性分析主要分析现有技术条件能否顺利完成开发工作,硬件、软件配置能否满足开发者的需要,各类技术人员的数量,水平,来源等。图书馆管理系统的工作主要是在读者和图书馆之间架起一座桥梁,能相互沟通信息和处理信息。这一特点非常适合计算机特点,通过网络internet技术,发挥计算机的信息传输速度快、准确度高的优势。计算机硬件和软件技术的飞速发展,为系统的建设提供了技术条件。

5

3.1.3社会可行性分析

社会可行性有时也称为操作可行性,主要论证新系统在企业或机构开发和运行的可能性以及运行后可能一起的对企业或机构的影响,即组织内外是否具备接受和使用新系统的条件。在当前信息技术飞速发展的大环境下,计算机技术和软件技术的更新是图书馆完全有可能也有能力采用这样先进的管理技术。它对图书馆带来的影响可以看到:

(a)对传统管理理念的冲击,可能引起管理层的变动和人员的调整。 (b)对图书馆工作人员的要求提高,使图书馆在一定的可能下进行机构精简,迫使工作人员继续学习新知识,拓宽图书馆在市场环境下的生存空间。

(c)对图书馆与读者之间业务方式的转变和扩充。

最后,针对用户对图书资源进行有效利用和管理的功能需求,用建模技术对图书管理资源采用面向对象的描述方式,在具体系统功能实现之前,建立起系统模型是很必要的,这里采用具有可视化、能够柔性实现分析、设计和开发系统的统一建模语言实现系统模型构建。同时,结合最流行的基于浏览器的数据管理模式,建议采用基于组件技术的B/S(brower/server)系统结构。

从技术的角度来考虑,随着计算机技术的深入发展,相关的应用软件、技术已经很成熟了,各种信息系统的开发工具也很完善了。运用现在软件行业中流行的开发工具JAVA以及MySQL,借鉴别人成功开发的宝贵经验,可成功开发一个功能基本完善的、符合中小型生产企业生产管理所需的生产管理信息系统。

综上所述,实施生产管理系统在技术上、经济上、运行上以及社会

6

环境上都是可行的,因此,开发生产管理信息系统是可行的。

3.2 系统的需求分析

公司的图书管理涉及图书信息、系统用户信息、读者信息、图书借阅等多种数据管理。从管理的角度可将图书分为三类:图书信息管理、系统用户管理、读者数据管理。图书信息管理包括图书征定、借还、查询等操作,系统用户管理包括系统用户类别和用户数据管理,读者数据管理包括读者类别管理和个人数据的录入、修改和删除。

图书借阅者的需求是查询图书室所存的图书、个人借阅情况及个人信息的修改;图书馆工作人员对图书借阅者的借阅及还书要求进行操作,同时形成借书或还书报表给借阅者查看确认;图书馆管理人员的功能最为复杂,包括对工作人员、图书借阅者、图书进行管理和维护,及系统状态的查看、维护等。图书借阅者可直接查看图书馆图书情况,如果图书借阅者根据本人借书证号和密码登录系统,还可以进行本人借书情况的查询和维护部分个人信息。一般情况下,图书借阅者只应该查询和维护本人的借书情况和个人信息,若查询和维护其他借阅者的借书情况和个人信息,就要知道其他图书借阅者的借书证号和密码。这些是很难得到的,特别是密码,所以不但满足了图书借阅者的要求,还保护了图书借阅者的个人隐私。图书馆工作人员有修改图书借阅者借书和还书记录的权限,所以需对工作人员登陆本模块进行更多的考虑。在此模块中,图书馆工作人员可以为图书借阅者加入借书记录或是还书记录,并打印生成相应的报表给用户查看和确认。图书馆管理人员功能的信息量大,数据安全性和保密性要求最高。本功能实现对图书信息、借阅者信息、总体借阅情况信息的管理和统计、工作人员和管理人员信息查看

7

及维护。图书馆管理员可以浏览、查询、添加、删除、修改、统计图书的基本信息;浏览、查询、统计、添加、删除和修改图书借阅者的基本信息,浏览、查询、统计图书馆的借阅信息,但不能添加、删除和修改借阅信息,这部分功能应该由图书馆工作人员执行,但是,删除某条图书借阅者基本信息记录时,应实现对该图书借阅者借阅记录的级联删除。并且还应具有生成催还图书报表,并打印输出的功能。

3.3系统的功能需求

在本系统中,对读者来说,他们关心的问题其实是如何方便的查询到图书馆中的书籍以及自己正在借阅或是已经借阅过些什么书,所借的书是否到期等。[3]由此可以得出系统在面向读者方面应该至少做到如下几点:

1.图书查询。

2.读者信息查询,读者信息的查询内容应包括下面的几个方面:

1) 读者信息——对读者的基本信息进行显示。

2) 书刊借阅——对该读者借阅过的所有书籍进行查询。

3) 借阅历史——查询该读者借阅过的所有书籍。

4) 违章信息——该读者的违章信息。

5) 读者规则——该读者所应用的规则。

对系统的管理员来说,应该注意的是:

1.图书馆中有些什么书,它们都存放在那里,是不是可以被借阅;

2.本图书馆发放的读者证有那些,如何管理这些读者证;

3.这些读者证都借阅着那些书;

8

4.如何来确定这些读者证是否可用,以及借书的还期等。

从以上问题出发,可以得出本系统应该具有的功能:

1.图书查询——对馆内的图书进行查询。

2.借阅管理——对读者的每一次借阅,还书进进登记和管理。

3.图书管理——对图书馆的书籍进行管理。

4.借阅证管理——对读者的借阅证进行管理。

5.读者规则管理——设置和管理读者规则。3.5数据要求 保证数据的安全性和完整性及权限的设置等等。

3.6设计模式

设计模式是面向对象的程序设计人员用来解决编程问题的一种形式化表示。本系统开发采用目前一种目前广泛流行的软件设计模式MVC。MVC(Model-View - Controller)应用程序结构被用来分析分布式应用程序的特征。这种抽象结构能有助于将应用程序分割成若干逻辑部件,使程序设计变得更加容易。把一个应用的输入、处理、输出流程按照Model、View、Controller的方式进行分离,这样一个应用被分成三个层——模型层、视图层、控制层。

MVC模式的出现,很好的解决了传统开发WEB应用方式中存在的问题。M代表模型(Model),包含完成任务所需要的所有的行为和数据;V代表视图(View)界面,显示模型提供的数据;C代表控制器(Controller),它将模型映射到界面中,处理用户的输入并响应请求。其模型关系如图所示。在MVC模式中,三层各尽其职、相对独立,各层内部的改变不会影响到其它层,从而降低了数据表达、数据描述和应用操作的耦合度,也能更好的实现开发中的分工,加快工程进度。

9

第四章 系统设计

4.1系统概要

本图书管理系统总体上分为前台页面显示和后台管理。前台页面(即本书图书管理系统的首页)实现了公告的显示图书查询,留言建议三大功能。而后台的页面则集成了图书管理中所需的功能和录入新书到库,办公图书,借还手续,查询图书等等。平时图书管理人员的工作都是在后台中完成的。前台是为了师生显示的。师生们可以看到图书管理人员发布的最新公告信息;并可以查询自己感兴趣的图书,也可以给学校的图书管理人员留言提议。相对应的后台是针对学校图书管理人员,后台的页面都加密,如果不正常登录是进入不了后台管理页面的,后台功能具体包括:发布首页公告,添加新书到库等等。

4.2设计思想

1. 利用软件开发现有软硬件环境,及先进的管理系统开发方案,从而达到充分利用现在资源提高系统开发水平和应用效果的目的。

2. 系统应该符合软件工程开发的理论,开发方法等开发依据。

3. 系统应满足图书馆管理工作需要,并达到操作过程中的直观,方便,实用,安全,准确等要求。

10

4.3模块设计及功能

4.4.1图书查询

读者可以通过网络访问学校图书馆管理系统,并对馆内的图书进行查询,对查到的在馆图书可以进行借阅。

图4.2 图书查询流程图 4.5.2借阅管理

这一部分是对书籍借阅、书籍归还的管理,当读者借书的时候,图书馆管理员把书籍的编号和读者的借阅证号输入系统,当此次借阅符合借阅规则的时候,借阅成功。并将结果写入到数据库中。读者归还书籍时,将图书交给图书管理员,管理员把书籍的编号和读者的借阅证号输入系统,系统核对借阅规则,对违规(如超期)的读者进行罚款之类。

[6]

基于JSP的图书管理系统的课程设计报告

基于JSP的图书管理系统的课程设计报告

11

基于JSP的图书管理系统的课程设计报告

基于JSP的图书管理系统的课程设计报告

图4.3借阅管理流程图

4.5.3图书管理

图书管理主要实现的功能是对新购的图书进行入库和废书记录从库中删除。当新书被放入图书馆时,管理员登录进入系统,把图书的信息添加到图书馆管理系统中,并指定是放到哪一个藏书馆中。这时图书可以被读者查询到,并可以借阅。当要把一本废书删除时,图书管理员登录进入系统,查找到这一本书,并将其删除。这时,这一本图书将不再能被查询到。

图4.4图书管理流程图 4.5.4借书证管理

本部分是对借阅证进行管理,并对读者的一些基本的信息进行维护,提供增、删、改等功能。每一个借阅证都要以某一个读者规则相应,读者规则决定读者可以借阅书籍的等级,如借书时间、借书种类等。当读者借阅证丢失时,可以进行挂失处理。持失之后借阅证失效。

基于JSP的图书管理系统的课程设计报告

图4.5借书证管理流程图

4.5.5读者规则管理

读者规则包括借阅时间,可借阅的图书数目,可借阅图书的书馆等。这一部分可以对读者规则进行管理,主要是增、删、改操作。

图4.6 读者规则管理流程图 4.5.6借还图书功能流程图

基于JSP的图书管理系统的课程设计报告

图9 借还书流程图

基于JSP的图书管理系统的课程设计报告

13

4.6数据库的设计

基于JSP的图书管理系统的课程设计报告

第五章 系统实现

5.1管理员登录模块

打开IE浏览器,在地址栏中输入:http://localhost:8080 /StrutsLibrarySystem/就会出现正如图10所示管理员登录界面,在管理员名称中输入我的登录名称:dengzongqiang,在管理员密码中输入我的登录密码:19880408,再按确定就可以进入图书馆管理系统的主界面了.

14

图5.1 管理员登录图

管理员登录语句

<html>

<meta http-equiv="Content-Type" content="text/html;

charset=gb2312">

<head>

<title>图书馆管理系统</title>

<link href="CSS/style.css" rel="stylesheet">

<script language="javascript">

function check(form){

if (form.name.value==""){

alert("请输入管理员名

称!");form.name.focus();return false;

}

if (form.pwd.value==""){

alert("请输入密

码!");form.pwd.focus();return false;

}

}

</script>

</head>

</td>

<td width="10%">管理员名称:

</td>

<td width="31%">

<input name="name"

type="text" class="logininput" id="name" size="27"> </td>

15

基于JSP的图书管理系统的课程设计报告

<td width="9%">&nbsp;</td> </tr>

<tr>

<td

height="37">&nbsp;</td>

<td>管理员密码:</td>

<td><input name="pwd" type="password" class="logininput" id="pwd" size="27"></td>

<td>&nbsp;</td>

</tr>

<tr>

<td

height="30">&nbsp;</td>

<td colspan="2" align="center"><input name="Submit" type="submit" class="btn_grey" value="确定" onClick="return check(form1)">

&nbsp;

<input name="Submit3" type="reset" class="btn_grey" value="重置">&nbsp; <input name="Submit2" type="button" class="btn_grey" value="关闭" onClick="window.close();"></td>

<td>&nbsp;</td>

</tr>

</form> <td width="1%">&nbsp;</td> </table>

<table width="100%" height="27" border="0" cellpadding="0" cellspacing="0">

<tr>

<td align="center" class="word_login"><br>

本站请使用IE6.0或以上版本 1024*768为最佳显示效果</td>

</table></td>

16

</tr>

</table>

</body>

</html

5.2.图书馆主界面模块

在该图书馆主界面中有首页、系统设置(下拉表中有图书馆信息、管理员设置、参数设置、书架设置)、读者管理(读者类型管理、读者档案管理)、图书管理(图书类型设置、图书档案管理)、图书借还(图书借阅、图书续借、图书归还)、系统查询(图书档案查询、图书借阅查询、图书到期提醒)、更改口令、推出系统。上面还显示了图书借阅排行榜。

基于JSP的图书管理系统的课程设计报告

图5.2图书馆主界面图

图书馆主界面语句

<tr>

<td height="20">&nbsp;</td>

<td width="10%"><a href="#" onClick="window.location.reload();" class="word_dark">刷新页面</a></td>

<td

width="9%"><a 17 href="#" onClick="myclose()"

class="word_dark">关闭系统</a></td>

<script language="javascript"> function myclose(){ } if(confirm("真的要关闭当前窗口吗?")){ } window.close(); </script>

</tr>

</table>

<meta http-equiv="Content-Type" content="text/html; charset=gb2312"> <script src="JS/onclock.JS"></script>

<script src="JS/menu.JS"></script>

<div class=menuskin id=popmenu

onmouseover="clearhidemenu();highlightmenu(event,'on')" onmouseout="highlightmenu(event,'off');dynamichide(event)" style="Z-index:100;position:absolute;"></div>

<table width="778" border="0" align="center" cellpadding="0" cellspacing="0" bgcolor="#FFFFFF">

<tr bgcolor="#DFA40C">

<td width="3%" height="27">&nbsp;</td>

<td width="29%"><div id="bgclock" class="word_white"></div></td>

<script language="javascript"> function quit(){ if(confirm("真的要退出系统吗?")){

18

} } window.location.href="logout.jsp"; </script>

width="66%" align="right" bgcolor="#B0690B" <td

class="word_white"><a href="main.jsp" class="word_white">首页</a> | <a onmouseover=showmenu(event,sysmenu) onmouseout=delayhidemenu() class="word_white" style="CURSOR:hand" >系统设置</a> | <a onmouseover=showmenu(event,readermenu) onmouseout=delayhidemenu() style="CURSOR:hand" class="word_white">读者管理</a> | <a onmouseover=showmenu(event,bookmenu) onmouseout=delayhidemenu() class="word_white" style="CURSOR:hand" >图书管理</a> | <a onmouseover=showmenu(event,borrowmenu) onmouseout=delayhidemenu() class="word_white" style="CURSOR:hand">图书借还</a> | <a onmouseover=showmenu(event,querymenu) onmouseout=delayhidemenu() class="word_white" style="CURSOR:hand" >系统查询</a> | <a href="manager.do?action=querypwd" class="word_white">更改口令</a> | <a href="#" onClick="quit()" class="word_white">退出系统</a></td>

<td width="2%" bgcolor="#B0690B">&nbsp;</td>

</tr>

</tr>

</table>

</body>

</html>

5.3.图书档案管理模块

19

在该模块中显示图书馆有哪些图书信息,包括条形码,图书名称,图书类型,出版社,书架,修改,删除。

基于JSP的图书管理系统的课程设计报告

图5.3 图书档案管理图

图书档案管理语句

</head>

<body onLoad="clockon(bgclock)">

<meta http-equiv="Content-Type" content="text/html; charset=gb2312"> <table width="778" border="0" align="center" cellpadding="0" cellspacing="0">

<table width="778" border="0" cellspacing="0" cellpadding="0" align="center">

<tr>

<td height="22" valign="top" class="word_orange">当前位置:读者管理 > 读者档案管理 >>></td>

</tr>

<tr>

<td align="center" valign="top">

<table width="100%" border="0" cellspacing="0" cellpadding="0">

20

<tr>

<td width="87%">&nbsp; </td>

<td width="13%">

<a href="reader_add.jsp">添加读者信息</a></td>

</tr>

</table>

<table width="95%" border="1" cellpadding="0" cellspacing="0" bordercolor="#FFFFFF"

bordercolorlight="#FFFFFF">

<tr align="center" bgcolor="#e3F4F7">

<td width="13%" bgcolor="#F9D16B">条形码</td>

<td width="10%" bgcolor="#F9D16B">姓名</td>

<td width="8%" bgcolor="#F9D16B">读者类型</td>

<td width="12%" bgcolor="#F9D16B">证件类型</td>

<td width="20%" bgcolor="#F9D16B">证件号码</td>

<td width="12%" bgcolor="#F9D16B">电话</td>

<td width="15%" bgcolor="#F9D16B">Email</td>

<td width="5%" bgcolor="#F9D16B">修改</td>

<td width="5%" bgcolor="#F9D16B">删除</td>

</tr>

<tr>

<td style="padding:5px;">2008010100001</td>

<td style="padding:5px;"><a bordercolordark="#F6B83B" href="reader.do?action=readerDetail&ID=1">wgh</a></td>

<td style="padding:5px;">学生</td>

21

<td align="center">身份证</td>

<td align="center">2201041980********</td>

<td align="center">13634*******</td>

<td align="center">wgh717@****.com</td>

<td align="center"><a href="reader.do?action=readerModifyQuery&ID=1">修改</a></td>

<td align="center"><a href="reader.do?action=readerDel&ID=1">删除</a></td>

</tr>

<tr>

<td style="padding:5px;">123123123</td>

<td style="padding:5px;"><a href="reader.do?action=readerDetail&ID=2">辅导</a></td>

<td style="padding:5px;">程序员</td>

<td align="center">身份证</td>

<td align="center">220</td>

<td align="center">&nbsp;</td>

<td align="center">&nbsp;</td>

<td align="center"><a href="reader.do?action=readerModifyQuery&ID=2">修改</a></td>

<td align="center"><a href="reader.do?action=readerDel&ID=2">删除</a></td>

</tr>

<tr>

<td style="padding:5px;">200616020113</td>

<td

22

style="padding:5px;"><a

href="reader.do?action=readerDetail&ID=4">邓宗强</a></td>

<td style="padding:5px;">学生</td>

<td align="center">身份证</td>

<td align="center">43xxxxxxxxxxxx</td>

<td align="center">138xxxxxxxx</td>

<td align="center">jenekop2006@126.com</td>

<td align="center"><a href="reader.do?action=readerModifyQuery&ID=4">修改</a></td>

<td align="center"><a href="reader.do?action=readerDel&ID=4">删除</a></td>

</tr>

</td>

</tr>

</table>

</body>

</html>

5.4 图书借阅模块

借阅管理功能是提供给管理员使用的。当有一个读者要借书的时候,管理员输入读书条形码,单击“确定”按钮,会显示读者姓名,性别,读者类型,证件类型,证件号码, 可借数量,然后在图书条形码中输入条形码或者在图书名称里输入图书名称,单击“确定”按钮,就会显示图书名称,借阅时间,应还时间,出版社,书架,单价,再单击“完成借阅”按钮就完成了一次借阅。

23

图 5.4 图书借阅图 图书借阅语句

<html>

<head>

<title>图书馆管理系统</title>

<link href="CSS/style.css" rel="stylesheet"> <script language="javascript"> function checkreader(form){ if(form.barcode.value==""){ alert("请输入码!");form.barcode.focus();return; }

form.submit();

}

function checkbook(form){

if(form.barcode.value==""){ alert("请输入码!");form.barcode.focus();return; }

if(form.inputkey.value==""){ alert("请输入字!");form.inputkey.focus();return; }

24

基于JSP的图书管理系统的课程设计报告

读者条形读者条形查询关键

if(form.number.value-form.borrowNumber.value<=0){ alert("您不能再借阅其他图书了!");return;

}

form.submit();

}

</script>

</head>

<tr>

<td align="center"><table width="96%" border="0" cellpadding="0" cellspacing="0">

<tr>

<td height="27">姓&nbsp;&nbsp;&nbsp;&nbsp;名:

<input name="readername" type="text" id="readername" value=""></td>

<td>性&nbsp;&nbsp;&nbsp;&nbsp;别:

<input name="sex" type="text" id="sex" value=""></td>

<td>读者类型:

<input name="readerType" type="text" id="readerType" value=""></td>

</tr>

<tr>

<td height="27">证件类型:

<input name="paperType" type="text" id="paperType" value=""></td>

<td>证件号码:

<input name="paperNo" type="text" id="paperNo" value=""></td>

<td>可借数量:

<input name="number" type="text" id="number" value="0" size="17">

&nbsp;</td>

</tr>

</table></td>

</tr>

25

</table></td>

</tr>

<tr>

<td height="32" background="Images/borrow_if.gif">&nbsp;添加的依据:

<input name="f" type="radio" class="noborder" value="barcode" checked>

图书条形码 &nbsp;&nbsp;

<input name="f" type="radio" class="noborder" value="bookname">

图书名称&nbsp;&nbsp;

<input name="inputkey" type="text" id="inputkey" size="50">

<input name="Submit2" type="button" class="btn_grey" value="确定" onClick="checkbook(form1)">

<input name="operator" type="hidden" id="operator" value="dengzongqiang">

<input name="Button" type="button" class="btn_grey" value="完成借阅" onClick="window.location.href='bookBorrow.jsp'">

</td>

</tr>

<tr>

<td valign="top" bgcolor="#FCEC9A" style="padding:5px"><table width="99%" border="1" cellpadding="0" cellspacing="0" bordercolor="#FFFFFF" bordercolorlight="#FFFFFF" bordercolordark="#F6B83B" bgcolor="#FFFFFF">

<tr align="center" bgcolor="#F9D16B">

<td width="29%" height="25">图书名称</td> <td width="12%">借阅时间</td>

<td width="14%">应还时间</td>

<td width="17%">出版社</td>

<td width="14%">书架</td>

<td colspan="2">定价(元)</td>

</tr>

<input name="borrowNumber" type="hidden" id="borrowNumber" value="0"> </body>

26

</html>

5.5图书归还模块

图书归还模块功能是提供给管理员使用的。当有一个读者要归还图书的时候,管理员输入读书条形码,单击“确定”按钮,会显示读者姓名,性别,读者类型,证件类型,证件号码, 可借数量,然后在图书条形码中输入条形码或者在图书名称里输入图书名称,单击“确定”按钮,就会显示图书名称,借阅时间,应还时间,出版社,书架,单价,再单击“完成归还”按钮就完成了一次借阅。

图书归还语句和图书查询语句差不太多,在这省略了

5.6.图书借阅查询模块

在该模块中能显示所有的被借的书的图书条形码,图书名称,读者条形码,读者名称,借阅时间,应还时间,是否归还。如果想查询具体的被借阅的书可以在请选择查询依据中选择图书条形码,再在右边框中输入图书条形码,然后单击“查询”按钮就可以显示该图书条形码的借阅信息。

27

图5.6 图书借阅查询模块图

图书借阅查询语句

<html>

<head>

<title>图书馆管理系统</title>

<link href="CSS/style.css" rel="stylesheet">

<script src="JS/function.js"></script>

<script language="javascript">

function check(myform){

if(myform.flag[0].checked==false && myform.flag[1].checked==false){ alert("请选择查询方式!");return false;

}

if (myform.flag[1].checked){

if(myform.sdate.value==""){

alert("请输入开始日期");myform.sdate.focus();return false; }

if(CheckDate(myform.sdate.value)){

alert("您输入的开始日期不正确(如:2006-07-05)\n 请注意闰年!");myform.sDate.focus();return false;

}

if(myform.edate.value==""){

alert("请输入结束日期");myform.edate.focus();return false; }

28

基于JSP的图书管理系统的课程设计报告

if(CheckDate(myform.edate.value)){

alert("您输入的结束日期不正确(如:2006-07-05)\n 请注意闰年!");myform.edate.focus();return false;

}

}

}

</script>

<td height="29" bgcolor="#F9D16B"><input name="flag" type="checkbox" class="noborder" value="a" checked>

请选择查询依据:

<select name="f" class="wenbenkuang" id="f">

<option value="barcode">图书条形码</option> <option value="bookname">图书名称</option>

<option value="readerbarcode">读者条形码</option> <option value="readername">读者名称</option> </select>

<input name="key" type="text" id="key" size="50"> <input name="Submit" type="submit" class="btn_grey" value="查询" onClick="return check(myform)"></td>

</tr>

<tr>

<td height="26" bgcolor="#F9D16B">

<input name="flag" type="checkbox" class="noborder" value="b">

借阅时间: 从

<input name="sdate" type="text" id="sdate">

<input name="edate" type="text" id="edate">

(日期格式为:2006-07-05)</td>

</tr>

</table>

</form>

<table width="98%" border="1" cellpadding="0" cellspacing="0" bordercolor="#FFFFFF" bordercolordark="#F6B83B" bordercolorlight="#FFFFFF">

<tr align="center" bgcolor="#e3F4F7">

29

<td width="11%" bgcolor="#F9D16B">图书条形码</td>

<td width="29%" bgcolor="#F9D16B">图书名称</td>

<td width="15%" bgcolor="#F9D16B">读者条形码</td>

<td width="13%" bgcolor="#F9D16B">读者名称</td>

<td width="12%" bgcolor="#F9D16B">借阅时间</td>

<td width="12%" bgcolor="#F9D16B">应还时间</td>

<td width="8%" bgcolor="#F9D16B">是否归还</td>

</tr>

</table>

</body>

</html>

5.7更改口令模块

在该模块图中输入管理员名称,原密码,新密码,确认新密码就可以更改管理员密码了。

基于JSP的图书管理系统的课程设计报告

图5.8 更改口令模块图

更改密码语句

<html xmlns="/1999/xhtml">

<head>

<title>图书馆管理系统</title>

<link href="CSS/style.css" rel="stylesheet">

</head>

30

<script language="javascript">

function checkForm(form){

if(form.oldpwd.value==""){

alert("请输入的原密码!");form.oldpwd.focus();return false;

}

if(form.oldpwd.value!=form.holdpwd.value){

alert("您输入的原密码不正确,请重新输入!");form.oldpwd.value=""; form.oldpwd.focus();return false;

}

if(form.pwd.value==""){

alert("请输入的新密码!");form.pwd.focus();return false;

}

if(form.pwd1.value==""){

alert("请确认新密码!");form.pwd1.focus();return false;

}

if(form.pwd.value!=form.pwd1.value){

alert("您两次输入的新密码不一致,请重新输入!");

form.pwd.value="";form.pwd1.value="";

form.pwd.focus();return false;

}

}

</script>

<table width="778" border="0" cellspacing="0" cellpadding="0" align="center"> <tr>

<td valign="top" bgcolor="#FFFFFF"><table width="99%" height="510" border="0" align="center" cellpadding="0" cellspacing="0" bgcolor="#FFFFFF" class="tableBorder_gray">

<tr>

<td height="510" valign="top" style="padding:5px;"><table width="98%" height="487" border="0" cellpadding="0" cellspacing="0">

<tr>

<td height="22" valign="top" class="word_orange">当前位置:更改口令 >>></td>

</tr>

<tr>

<td align="center" valign="top">

<table width="100%" border="0" cellspacing="0" cellpadding="0">

31

<tr>

<td width="84%">&nbsp; </td>

</tr>

</table> <form name="form1" method="post" action="manager.do?action=modifypwd">

<table width="47%" border="0" cellpadding="0" cellspacing="0" bordercolor="#FFFFFF" bordercolordark="#D2E3E6" bordercolorlight="#FFFFFF"> <tr align="center">

<td width="27%" align="left" style="padding:5px;">管理员名称:</td> <td width="73%" align="left">

<input name="name" type="text" id="name" value="dengzongqiang" readonly="yes" size="30"> </td>

<tr>

<td align="left" style="padding:5px;">原密码:</td>

<td align="left"><input name="oldpwd" type="password" id="oldpwd" size="30">

<input name="holdpwd" type="hidden" id="holdpwd" value="19880408"></td>

</tr>

<tr>

<td align="left" style="padding:5px;">新密码:</td>

<td align="left"><input name="pwd" type="password" id="pwd" size="30"></td>

</tr>

<tr>

<td align="left" style="padding:5px;">确认新密码:</td>

<td align="left"><input name="pwd1" type="password" id="pwd1" size="30"></td>

</tr>

<tr>

<td height="65" align="left" style="padding:5px;">&nbsp;</td>

<td><input name="Submit" type="submit" class="btn_grey" value="保存" onClick="return checkForm(form1)">

&nbsp;

<input name="Submit2" type="reset" class="btn_grey" value="取消"></td> </tr>

</table>

32

</td>

</tr>

</table>

</body>

</html>

10.其他模块

其余功能模块实现方法同上面雷同,就不在详细分析代码,只简单叙述。

总结

本文提出的基于WEB的图书管理系统完成了借书,还书,查询图书,管理借书证和管理员帐户设置等主要功能,本系统是基于B/S模式,其后台部分完全实现借书与还书的手续操作与对图书和人员的管理功能,系统界面简单、易用,任何人都可以在短时间内学会使用该系统,在前台部分,创新设计的WAP图书查询部分,不仅大大方便了同学们查询图书,而且使得系统多样化,多元化,具有有很强的扩展性。

33

更多相关推荐:
图书管理系统课程设计报告

管理信息系统实习报告专业班级学生姓名指导教师时间成绩评语王桃群20xx32320xx313一课程设计题目图书管理系统二系统需求1系统的准备操作系统Windowsxp数据库系统SQLServer20xx或SQLS...

图书管理系统课程设计报告()

课程设计报告20xx20xx学年第二学期课学学专指业导班教生姓程程序设计语言课程设计图书管理系统名号级师课程设计名称20xx年8月图书管理系统一题目名称图书管理系统二设计要求及问题的分析设计要求设计小型的图书管...

c语言图书管理系统课程设计报告

沈航北方科技学院课程设计说明书课程名称教学部专业数控班级B042111学号B04211123学生姓名指导教师赵小磊20xx年6月链表实现图书信息操作田文目录摘要31绪论32系统分析321功能需求322数据需求4...

C语言课程设计报告-图书管理系统

课程设计报告图书馆管理系统目录1题目与要求22系统总体设计要给出必要的文字说明及必要的图示321功能需求分析明确选题的功能需求322系统功能模块划分要给出系统功能模块图43详细设计431重要数据的数据结构设计即...

C语言图书馆管理系统课程设计报告12

C语言课程设计学生姓名袁盛升学生学号所在班级任课教师姜林10211121图书馆管理系统设计目的图书信息包括登录号书名作者名分类号出版单位出版时间价格等试设计一图书信息管理系统使之能提供以下功能1系统以菜单方式工...

图书管理系统数据库课程设计实验报告

西安邮电大学计算机学院数据库课程设计报告题目图书管理系统专业名称班级软件1205学生姓名学号8位04123139指导教师樊珊起止时间20xx年06月02日20xx年06月13日目录第一章需求分析1学生用户端2教...

c++_课程设计报告及源代码_图书馆管理系统

重庆科技学院C语言课程设计课程设计报告目录1设计内容任务及基本要求211设计内容212设计任务213设计基本要求22总体设计思路421系统功能422各个模块之间的主要关系423总体程序框图524系统的总体流程图...

c语言图书管理系统课程设计报告

合肥学院计算机科学与技术系课程设计报告20xx20xx学年第二学期课学学专指业导班教生姓程C语言课程设计图书管理系统名号级师课程设计名称20xx年6月一需求分析为了满足图书管理的要求通过计算机技术给图书管理人员...

图书馆管理系统_毕业设计论文_开题报告

开题报告课题名称图书管理系统一立项依据1课题的目的及意义本次毕业设计所从事的课题题目是基于VB的图书管理系统的设计与实现课题的目的应用当前高速发展的计算机技术组建图书管理系统随着计算机及网络技术的飞速发展Int...

图书管理系统java课程设计报告

滨江学院Java程序设计实习课程设计题目图书管理系统学生姓名张立檑学号20xx2346035院系滨江学院专业年级11网络工程1指导教师二一三年6月20日沈阳工程学院课程设计报告目录目录第1章引言1第2章系统功能...

c++图书管理系统实验报告和源代码

综合实践报告课程名称程序设计综合实训设计题目图书管理系统姓名学号专业班级指导老师完成日期1综合实践报告1设计任务11设计目的运用所学知识完成图书馆管理系统通过实践加强对所学知识的理解和巩固12设计内容建立图书馆...

图书管理系统课程设计实习报告 信息系统分析与设计

信息系统分析与设计课程设计五总结一图书管理系统规划1.1绪论20##年的今天是一个信息高度发达的时代,伴随着科技的进步,文化的汲取,人们对于图书信息的了解与掌握也达到了一定的高度。尤其是学生对于知识的渴求更是与…

图书管理系统课程设计报告(22篇)