毕业设计基于java技术的图书馆借阅管理系统的开发.docx

上传人:b****6 文档编号:4753793 上传时间:2022-12-08 格式:DOCX 页数:17 大小:99.94KB
下载 相关 举报
毕业设计基于java技术的图书馆借阅管理系统的开发.docx_第1页
第1页 / 共17页
毕业设计基于java技术的图书馆借阅管理系统的开发.docx_第2页
第2页 / 共17页
毕业设计基于java技术的图书馆借阅管理系统的开发.docx_第3页
第3页 / 共17页
毕业设计基于java技术的图书馆借阅管理系统的开发.docx_第4页
第4页 / 共17页
毕业设计基于java技术的图书馆借阅管理系统的开发.docx_第5页
第5页 / 共17页
点击查看更多>>
下载资源
资源描述

毕业设计基于java技术的图书馆借阅管理系统的开发.docx

《毕业设计基于java技术的图书馆借阅管理系统的开发.docx》由会员分享,可在线阅读,更多相关《毕业设计基于java技术的图书馆借阅管理系统的开发.docx(17页珍藏版)》请在冰豆网上搜索。

毕业设计基于java技术的图书馆借阅管理系统的开发.docx

毕业设计基于java技术的图书馆借阅管理系统的开发

 

基于java技术的图书馆借阅管理系统的开发

摘要

随着科学技术的进步,计算机行业的迅速发展,大大提高人们的工作效率。

计算机信息处理系统的引进已彻底改变了许多系统的经营管理。

图书管理系统是学校管理机制中的重要组成部分,通过对图书管理系统的运行管理机制进行调查研究,开发了此图书系统。

本系统中解决了学校图书管理事务中的常用基本问题以及相关统计工作。

本系统中包含6个功能模块:

系统设置,读者管理,图书管理,图书借还,系统查询和更改口令。

本系统使有jsp进行网页界面的设计,使用MVC设计模式,采用了开源框架Struts,它采用了当今软件设计的最新技术,具有开发效率高、设计灵活、生成的软件界面友好美观等特点。

本系统中通过JDBC驱动和数据库进行无缝连接,后端的数据库是mysql,也是一个开源的数据库系统,该数据库具有较高的完整性,一致性和安全性。

关键词:

图书管理、信息管理、jsp、struts。

目录

一引言3

(一)毕业设计主要任务3

(二)目前图书管理系统存在的问题3

(三)课题意义4

(四)论文的工作和安排4

二图书借阅管理需求分析5

(一)技术可行性5

(二)经济可行性5

三总体设计5

(一)数据库设计5

(二)系统总体结构设计10

四程序设计与编码11

(一)开发平台与工具11

(二)程序设计12

五开发小结17

(一)工作成果17

(二)改进意见18

六参考文献18

七致谢19

 

一引言

(一)毕业设计主要任务

1.实现图书馆对所藏图书的按类别、书名等多方面的查询,最大的方便读者和图书馆工作人员对所需图书的查询。

2.建立图书馆外借读者数据库,方便工作人员对读者进行有效管理;

3.建立图书馆工作人员数据库,限定每个工作人员对软件操作的权限,最大限度的保护数据库。

4.实现图书馆对新书入库,旧书注销的简单处理,并且建立书籍档案,方便进货。

5.实现图书馆

(二)目前图书管理系统存在的问题

1.检索速度慢、效率低

因为图书馆的藏书种类多、数量多,将藏书准确地分门别类,快速检索,手工进行非常困难往往是终于查到了二伟的信息,馆中没有此书或已被别人借走。

图书馆的规模越大,这个问题越突出。

2.借书、还书工作量大

借书、还书频率越大,说明图书馆的作用越大,然而随之而来的大量的借书、还书登记、实存图书的更新以及借出图书超期、遗失等的处理,其工作量之大,往往是人工操作所难以胜任的。

而且经常会出现这样那样的差错。

3.图书统计工作难、藏书更新不能及时完成。

图书馆的图书应根据科学技术的发展和教学工作的需要及时添加和更新,然而由于藏书数量及图书种类越来越多,加上自然损耗,人为破坏,使图书的统计工作难以及时完成,藏书的更新也就很难有针对性地进行,藏书的知识结构得不到良好地控制。

我校也是一所发展中的高校,近儿年的发展速度很快,图书馆的规模和藏书数量也不断的扩大,为了解决海量图书的管理问题,改变传统的管理方式也是迫在眉睫了。

(三)课题意义

随着计算机的广泛应用,其逐步成为现代化的标志。

图书馆或者一些企业内部,甚至是书店,在正常运行过程中总是面对大量的读者信息,书籍信息以及两者相互作用产生的借书信息、还书信息。

因此需要对读者资源、书籍资源、借书信息、还书信息进行管理,及时了解各个环节中信息的变更,要对因此而产生的单据进行及时的处理,为了提高图书馆或者企业内部对图书存销的自动化的管理,能够更快速的满足读者的要求,提高各种工作的效率,现对其设计相应的系统,以达到上述的目的[1]。

图书管理系统的主要功能是实现图书馆图书借阅和归还的管理的自动化。

围绕这一主要功能,本系统涉及到以下核心功能:

借阅管理,归还管理。

除了这些核心功能外,还包括一些基本和辅助功能,它们是:

用户管理、图书馆参数管理、图书管理、统计查询。

(四)论文的工作和安排

本次设计的目标是,开发一个图书馆借阅管理系统。

借助该系统,管理员通过快捷可靠的数据库管理,方便的管理图书馆的信息资料,规范化的管理读者用户,设定不同用户权限,并能通过互联网向读者提供更为方便的在线查询服务,方便读者的使用,最终达到提高图书馆资源利用效率的目的。

论文设计和实现了图书借阅管理系统系统,可以根据用户的不同权限,对图书馆的的各种信息进行添加、删除、修改或查询操作。

二图书借阅管理需求分析

可行性分析可以分为技术可行性和经济可行性。

(一)技术可行性

技术上的可行性分析主要分析技术条件能否顺利完成开发工作,软、硬件能否满足需要。

本系统采用JSP开发出友好美观的人机界面,便于用户理解、操作。

数据库管理系统采用MySQL,它能够处理大量数据,同时保持数据的完整性、安全性。

因此本系统的开发平台已成熟可行。

硬件方面,在科技飞速发展的今天,硬件更新速度越来越快,容量越来越大,可靠性越来越高,价格越来越便宜,因此硬件平台也能够满足本系统所需。

(二)经济可行性

鉴于计算机技术发展异常迅猛,在硬件软件配置以及开发技术均以可行的情况下开发这样一个管理系统成本不会很高,但其可以大大提高图书馆的工作效率,也是图书馆管理发展的必然趋势,其必将有比较宽阔的市场,因此改性统在经济可行性上时可行的。

三总体设计

(一)数据库设计

1.数据库设计概述

本系统采用MySQL5.0和SQLYog6.1进行数据库的设计。

整个系统所包括的信息有图书信息、读者信息、留言信息、图书借阅信息、图书归还信息、系统用户信息、读者类型信息。

可将这些信息抽象为下列系统所需要的数据项和数据结构:

1)图书信息(编号,图书名称,图书类型,作者,译者,ISBN号,价格,出版社,所在书架,入库时间,操作员)

2)图书类型(编号,名称,可借阅天数)

3)读者信息(编号,姓名,性别,条形码,读者类型,出生年月,有效证件,证件号码,登记日期,电话,邮箱,操作员)

4)读者类型(名称,可借阅图书本数)

5)图书借阅信息(图书编号,读者ID,借出时间,应还时间,是否归还,操作员)

6)图书归还信息(图书编号,读者ID,归还时间,操作员)

7)用户(编号,用户名称,密码)

8)图书馆信息(编号,名称,馆长,电话,地址,邮箱,创建日期,简介)

图书馆参数信息(编号,办证费用,有效期限)

注:

带下划线表示主键

图3.1图书借阅管理系统E-R图描述了该系统所涉及到的实体以及他们之间的关系。

具体结构如下图所示:

图1系统E-R图

2.数据表设计

表1图书信息表tb_bookinfo

字段名称

数据类型

字段长度

是否为空

说明

barcode

varchar

30

No

Key

bookname

varchar

70

No

author

varchar

30

Yes

作者

translator

varchar

30

Yes

译者

ISBN

varchar

20

No

price

float

8,2

No

图书价格

bookcase

varchar

10

No

图书所在书架

press

varchar

70

No

出版社

intime

date

No

图书入库时间

operator

varchar

30

No

操作员

page

int

10

Yes

图书页码

表2图书类型信息表tb_booktype

字段名称

数据类型

字段长度

是否为空

说明

ID

int

10

No

Key

bookname

varchar

30

No

days

int

10

No

可借阅天数

表3读者信息表tb_reader

字段名称

数据类型

字段长度

是否为空

说明

Id

int

10

No

Key

name

varchar

20

No

sex

varchar

4

No

barcode

varchar

30

No

readertype

varchar

11

No

读者类型

tel

varchar

20

Yes

电话

e-mail

varchar

100

Yes

paperType

varchar

10

No

证件类型

PaperNO.

Varchar

20

No

证件号码

birthday

date

Yes

intime

date

No

登记时间

operator

varchar

30

No

操作员

表4读者类型信息表tb_readertype

字段名称

数据类型

字段长度

是否为空

说明

ID

int

10

No

Key

readername

varchar

50

No

number

int

4

No

可借图书本数

表5图书借阅信息表tb_borrow

字段名称

数据类型

字段长度

是否为空

说明

ID

int

10

No

Key

readerID

varchar

10

No

bookID

int

10

No

borrowTime

date

No

结出时间

backTime

date

No

应归还时间

operator

varchar

30

No

操作员

ifback

tinyint

1

No

是否归还

表6图书归还信息表tb_giveback

字段名称

数据类型

字段长度

是否为空

说明

ID

int

10

No

Key

readerID

varchar

11

No

bookID

int

11

No

backTime

date

No

归还时间

operator

varchar

30

No

操作员

表7系统用户信息表tb_user

字段名称

数据类型

字段长度

是否为空

说明

ID

int

10

No

Key

name

varchar

30

No

password

varchar

30

No

表8图书馆信息表tb_library

字段名称

数据类型

字段长度

是否为空

说明

ID

int

10

No

Key

libraryname

varchar

50

No

curator

varchar

10

No

tel

varchar

20

Yes

结出时间

address

varchar

100

No

应归还时间

e-mail

varchar

100

No

url

varchar

100

No

图书馆网站

createDate

varchar

No

创馆时间

introduce

text

Yes

图书馆简介

(二)系统总体结构设计

该系统在Windows98/2000/XP环境下,主要采用JSP开发工具,MySQL数据库来设计,开发过程与成果应符合GB/T11457-1995软件工程术语。

1.图书管理系统总体结构图

图2系统总体结构图

根据需求分析的结果,按照“低耦合、高内聚”的原则,本系统将划分为以下主要功能模块:

系统管理员功能模块,读者管理功能模块,图书管理功能模块,图书借还功能模块;系统查询功能模块[8]。

2.系统管理员模块功能

该模块主要包括图书馆信息设置,用户管理,参数设置,书架设置。

1.图书馆信息设置

2.用户设置

3.图书馆参数设置

3.读者管理模块功能

该模块主要包含读者类型管理和读者信息管理两个子模块:

1.读者类型管理

2.读者信息管理

4.图书管理模块功能

图书管理功能模块可分为图书类型管理和图书信息管理两个子模块。

5.图书借还模块功能

该功能模块主要实现对读者借阅、续接、归还图书的操作

6.系统查询模块功能

该模块包括对图书馆藏书进行查询,对读者借阅情况进行查询,以及对借阅到期和超期的读者进行提醒的信息。

四程序设计与编码

(一)开发平台与工具

表9系统开发平台和工具

工具名称

用途

JDK1.6.0_11

MyEclipse

MySQL5.0

SQLYog6.1

Tomcat6.0

Struts1.0

Java开发工具包

J2EE集成开发环境

小型关系数据库管理系统

MySQL图形化数据库管理工具

Web应用服务器

第三方插件,可扩展的JavaEEWeb框架

(二)程序设计

1.数据库与Web服务器的连接

数据库连接时采用连接池技术链接MySQL,具体代码实现如下:

publicConnDB(){

try{

InputStreamin=getClass().getResourceAsStream(propFileName);

prop.load(in);//通过输入流对象加载Properties文件

dbClassName=prop.getProperty("DB_CLASS_NAME");//获取数据库驱动

dbUrl=prop.getProperty("DB_URL","jdbc:

mysql:

//127.0.0.1:

3306/db_librarySys?

user=root&password=123&useUnicode=true");

}

catch(Exceptione){

e.printStackTrace();//输出异常信息

}

}

publicstaticConnectiongetConnection(){

Connectionconn=null;

try{

Class.forName(dbClassName).newInstance();

conn=DriverManager.getConnection(dbUrl);

}

catch(Exceptionee){

ee.printStackTrace();

}

if(conn==null){

System.err.println("警告:

DbConnectionManager.getConnection()获得数据库链接失败.\r\n\r\n链接类型:

"+dbClassName+"\r\n链接位置:

"+dbUrl);

}

returnconn;

}

/*

*功能:

执行查询语句

*/

publicResultSetexecuteQuery(Stringsql){

try{

conn=getConnection();

stmt=conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,

ResultSet.CONCUR_READ_ONLY);

rs=stmt.executeQuery(sql);

}catch(SQLExceptionex){

System.err.println(ex.getMessage());

}

returnrs;

}

/*

*功能:

执行更新操作

*/

publicintexecuteUpdate(Stringsql){

intresult=0;

try{

conn=getConnection();//调用getConnection()方法构造Connection对象的一个实例conn

stmt=conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,

ResultSet.CONCUR_READ_ONLY);

result=stmt.executeUpdate(sql);//执行更新操作

}catch(SQLExceptionex){

result=0;

}

returnresult;

}

/*

*功能:

关闭数据库的连接

*/

publicvoidclose(){

try{

if(rs!

=null){

rs.close();

}

if(stmt!

=null){

stmt.close();

}

if(conn!

=null){

conn.close();

}

}catch(Exceptione){

e.printStackTrace(System.err);

}

}

}

2.登录模块程序设计

本模块主要是用户通过图书管理系统的首页登录进入该系统。

用户输入正确的用户名和密码,系统会根据用户的身份进行相应权限划分;如果登录信息有错误,则系统提示登入错误的信息,并且禁止系统用户进行任何操作。

图3用户登录流程图

3.系统管理员功能模块的实现

本模块中最主要的是管理系统用户,设置图书馆信息等操作,其中管理系统用户包括对他们进行添加,修改,删除及权限划分操作。

其中对系统用户权限的设置是该操作的重要部分也是系统提高效率的关键所在。

4.读者管理功能模块的实现

读者管理主要实现对读者的类型管理和信息管理两个功能子模块,读者信息管理则主要管理维护读者的基本信息

5.查询功能模块的实现

查询功能模块包括图书查询,读者借阅查询和借阅到期提醒三个子功能模块。

图书查询可根据图书的条形码,书名,作者,出版社等不同信息进行查询。

借阅查询子模块是对图书当前状态和读者当前的借阅情况进行查询,具有此权限的用户登录并进入该操作界面后选中相应的查询条件,并输入相应的查询信息,系统即可在页面显示被查询的图书的状态,或相应读者的当起借阅情况,此外,还可以输入相应时间段内的所有借阅清单,或选择某个读者查询他在某个时间段内的借阅情况。

6.图书管理功能模块的实现

图书管理模块也分为图书类型管理和图书档案管理两个子模块,其中图书类型管理功能处理将图书分类提高管理效率外还设置了不同类型图书可借阅的天数,对不同类型图书进行区别管理,图书档案管理是管理维护图书馆藏书的基本信息。

图书档案中包含图书的条形码,图书名称,图书类型,作者,译者,价格,出版社,所在书架等图书基本信息,其中作者,译者,页码是备选信息,可以不填。

7.图书借还功能模块的实现

该功能模块可分为图书借阅,图书归还,图书续借三个子模块.

(1)图书借阅。

如果在借阅时所要借阅的图书不存在或者读者借阅已达借阅图书的上线,则读者不能接续借阅图书,系统将给出相应提示。

(2)图书归还。

该子模块实现系统的图书归还功能,读者向图书管理员提供自己的编号会显示出读者当起的借阅情况,再提供要归还的图书标号,图书管理员将信息记录在系统中,归还成功。

(3)图书续借。

该子模块实现系统的图书续借功能,当读者所借的图书过期后,需要再接着借,就必须要童工借阅的图书标号,图书续借信息将被管理员记录在系统中,续借成功。

五开发小结

(一)工作成果

在MyEclipse开发环境下,以J2EE为平台,运用JSP网络编程语言和Struts框架和MySQL数据库完成了B/S模式的图书馆借阅管理系统。

系统基本上实现了预期的各项功能,达到了任务书中的主要设计内容的各项任务,整个系统也在经过测试和不断地改正之后能够顺利运行。

基本上实现了开题报告中的需求设计在程序编写,该系统能够实现:

1.读者在本系统的应用下可实现按照各种方式(如:

书名,编号,作者)查询图书馆的藏书请客,方便的借阅图书,续借图书,归还图书,能够查询自己的借阅图书情况。

2.图书馆工作人员能够实现方便的对图书进行查询,方便的进行读者借阅情况查询,方便的进行借书还书处理等,便捷的对图书信息进行添加、修改、删除,分类管理等操作,对读者信息进行相关添加,修改,分类管理等操作。

3.系统管理员可以对图书馆信息进行修改更新操作,对系统用户进行添加、修改、删除、权限设置等操作,对图书馆的办证参数进行修改维护等操作功能。

(二)改进意见

该系统在使用第三方插件Strusts时采用的是1.0版本的,若使用更新的2.0版本会更大的改进系统的开发便捷性和可维护性,系统在数据库与Web服务器的连接时采用的是连接池技术,若在数据库连接时使用现在流行的第三方插件Hibernate3.0,会使系统有更强的数据库映射关系,进而极大简化开发过程,还有就是系统在一些信息设置的细节上还存在不足,可以对系统的相关字段进行格式设置和异常处理,使数据更加规范化。

六参考文献

[1]王立福.软件工程(第二版)[M].北京:

北京大学出版社.2002.

[2]张秋余,杨玥.基于用例的需求建模方法[J].计算机工程与设计,2006,19:

3539-3541.

[3]MattheMacDonal.管理信息系统[J].电子工业出版社.2003.Vol.3(8):

102-108.

[4]张秋余,杨玥.基于用例的需求建模方法[J].计算机工程与设计,2006,19:

3539-3541.

[5]JohnW.Satzinger,RobertB.Jackson,StephenD.Burd.[Z].北京:

人民邮电出版社,2008.

[6]王珊,萨师炫.数据库系统概论(第三版)[M].北京:

高等教育出版社.2002

[7]张波.网络答疑系统的设计与实现[D].长春:

吉林大学软件学院,2005.

[8]陆荣幸,郁洲.J2EE平台上MVC设计模式的研究与实现[J].计算机应用研究,2003,03:

144-146.

[9]孙卫琴,李洪称.Tomcat与JavaWeb开发技术详解[M].北京:

电子工业出版社,2003.

[10]何成万,余秋惠.MVC模型2及软件框架Struts的研究[J].计算机工程,2002,06:

274-276.

[11]何成万,余秋惠.MVC模型2及软件框架Struts的研究[J].计算机工程,2002,06:

274-276.

[12]MartyHall,LarryBrown著,赵学良译.Servlet与JSP核心编程(第2版)[M].北京:

清华大学出版社,2004.

 

七致谢

岁月如梭,转眼之间大学三年就上完了。

毕业之际,我们的毕业设计也接近了尾声。

在论文即将完稿之际,我心中感慨颇多,在河南商业高等专科学校学习这三年时间里,我的老师和同学都给过我很多的帮助、关心和鼓舞,在此,我要深深地表示感谢!

首先,我要感谢我的父母,是您们的支持与鼓励是我顺利的读完了我的大学;使您们的教导和点播是我在迷茫的时候不迷失自己;是您们的言传身教使我懂得了如何与人为善,真爱身边的朋友们;是您们的实时适度的纠正,是我顺利成长不

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 农林牧渔 > 水产渔业

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1