论文.docx
- 文档编号:27694920
- 上传时间:2023-07-04
- 格式:DOCX
- 页数:49
- 大小:743.48KB
论文.docx
《论文.docx》由会员分享,可在线阅读,更多相关《论文.docx(49页珍藏版)》请在冰豆网上搜索。
论文
摘要
书社管理系统是典型的信息管理系统,其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。
对于前者要求建立起数据一致性和完整性强、数据安全性好的库。
而对于后者则要求应用程序功能完备,易使用等特点。
因此本人结合开放式书店的要求,对MYSQL数据库管理系统、数据库组件、SQL语言原理、JAVA应用程序设计,对数据库技术进行了较深入的学习和应用,主要完成对书社管理系统的需求分析、功能模块划分、数据库模式分析,并由此设计了数据库结构和应用程序。
系统运行结果证明,本文所设计的书社管理系统可以满足书社会员、书社管理员双方面的需要。
实现了数据库表的浏览,记录的添加、删除和修改,实现了多种条件查询,实现了会员锁定功能等。
设计充分利用J2EE、MYSQL数据库技术的强大力量,提高了编程效率和可靠性。
本系统为图书管理系统,通过该系统,使图书馆的信息管理工作系统化、规范化、自动化,从而达到提高图书管理效率的目的。
采用的开发工具是Struts2.0+Spring2.0+Hibernet和MYSQL数据库。
图书管理系统能够对读者信息、书籍信息、借书信息、还书信息进行管理。
及时了解各个环节中信息的变更。
管理人员必须以管理员身份登录,保证了系统的安全性。
系统的总体任务是使图书管理人员可以轻松快捷地完成对图书管理的任务。
有利于提高管理效率。
支持运行的环境:
MicrosoftWindow98/2000/XP
【关键词】:
图书管理系统;Struts2.0+Spring2.0+Hibernet;MYSQL;Server2000;J2EE
目录
摘要1
目录2
引言3
第一章图书管理系统需求分析4
1.1系统可行性分析4
1.2系统需求分析5
1.3系统特点5
1.4系统流程图5
第二章开发工具及运行环境概述7
2.1开发工具概述7
2.1.1MyEclipse开发工具的简介7
2.1.2Tomcat服务器的简介7
2.2运行环境8
2.2.1Struts2框架的简介8
2.2.2Hibernate框架的简介8
2.2.3Spring框架的简介9
第三章数据库的设计11
3.1数据库需求分析11
3.2数据库ERA模型12
3.3用例图设计14
3.4数据库的具体设计和实现14
第四章系统具体模块设计18
4.1Spring、hibernate与struts2的整合18
4.2设计主页面26
4.2.1用户登录页面27
4.2.2图书信息显示31
4.2.3图书预订页面35
4.2.4后台用户信息管理页面36
4.2.5用户管理模块37
4.2.6图书管理模块38
4.2.7借阅管理模块39
4.2.8图书图片上传设计40
总结41
致谢42
参考文献43
引言
当今的社会,竞争日益激烈。
若想谋得一份不错的工作,就要不断“充电”,尤其是我们即将毕业的学生,面临着很强的就业压力,更要努力提高自身的素质。
在这种形式下,书籍渐渐成为人们获得知识,并增长知识的主要途径,而图书馆就自然而然地在人们地生活中占据了十分重要的位置。
21世纪的今天,信息社会占着主流地位,计算机在各行各业中的运用已经得到普及,自动化、信息化的管理越来越广泛应用于各个领域。
因此图书的管理应顺应时代发展的需求,用信息化替代麻烦又容易出错的人工操作。
学校的图书信息管理是基础性的管理工作。
加强图书管理,不但关系到学生读者的查询、阅览的方便程度,而起然可以充分利用好学校的每一份资源,能够使学校整体呈现出优良的风气和面貌,促进学校各项工作的顺利展开。
因此,对图书管理系统进行有针对性的研究,并由此构造出一个适合我校图书信息管理系统的模型,将具有重要的使用价值。
信息系统是一种由人、计算机和管理规则组成的集成化系统。
该系统利用计算机的软硬件、手工规程、分析、计划和控制决策用的模型数据库,为一个企业或组织的作业、管理和决策提供信息支持。
传统的信息管理飞速地向电子化信息管理过渡,现代信息技术逐步渗透到信息资源的开发与利用。
图书馆是一个学校的标志。
图书馆系统的信息化程度对衡量校园的现代化水平起着至关重要的作用。
在图书馆中,积极采用信息技术和电子信息装备,更有效地开发,利用和管理图书资源,对于提高图书馆的服务水平,提高学校的信息化水平,都是相当重要的。
针对如此,我设计了一套图书管理系统。
图书管理系统采用的是计算机信息化管理,界面美观大方,人性化,功能强大且操作非常方便,将用户分成学生和管理人员。
管理人员负将数据输入到系统的数据库中,并且可以随时查询、添加、删除、修改用户信息,查询、添加、删除、修改图书信息还可以管理图书的借出、结算等。
采用数据库保存用户及图书信息,不易丢失而且更新迅速方便。
系统功能完善、运行速度快、安全性高、稳定性好。
第一章图书管理系统需求分析
1.1系统可行性分析
只要资源和时间不加以限制,所有的项目都是可行的,然而,由于资源缺乏和交付时间限制的困扰,给基于计算机系统的开发带来了困难。
因此对软件项目的可行性做出细致而谨慎的评估是十分必要的。
如果在定义阶段尽早发现将来可能在开发过程中遇到的问题,及早做出决定,可以避免大量的人工,金钱,时间上的浪费。
因此,我在开发《图书管理系统》之前,对本次开发的可行性进行了分析。
①技术可行性:
目前,网络技术应用已经非常普及,为我的这套软件使用提供了硬件环境。
以计算机为基础的管理系统使使用者摆脱了那种繁杂、易错的记录及管理方式,通过计算机以及配套的软件,用户可以采用全新的方式从不同的地方存取各种信息。
从客户/服务器方式上发展起来的框架结构为我们提供了开发本系统的基础。
②经济可行性:
另一方面,就用户自身来说,它也是需要这样一个软件的。
我们在计算机还没有普及之前,信息都必须通过在纸上填写来实现,这样既浪费时间又容易出错,。
随着信息时代的来临,我们的各项工作都要讲求效率,论文管理也不例外,这就为我的软件提供了使用群体。
③法律可行性:
在开发一个软件之前一定要确定它是否触犯某项法律或与国家的相关规定是否抵触。
本《图书管理系统》并不与任何法律或国家相关规定相抵触,所以在法律可行性上是通过的。
④系统运行可行性:
本系统可以运行在Win2000/XP操作系统之上,只要配置好web服务器,运行本软件,网络通畅。
客户端无论在什么地方都可以通过浏览器访问本系统。
没有地域时间限制。
⑤用户使用可行性:
本操作简单,有机算计基础的人无需培训即可使用,即使是没有计算机基础的人只需经过简单的培训就可以很熟练的使用本系统。
系统配置运行后,就用户方而言,由于用户使用本系统时,不会也不必关心系统内部的结构及实现方法,即对用户来说是透明的,所以本系统对用户而言,是定位在界面友好、操作方便、功能齐全的原则上的。
而以上的这些功能都能在所选择的开发环境中用所选择的开发工具来实现。
所以说本系统在用户使用可行性上是没有问题的。
1.2系统需求分析
进行系统的可行性分析之后,我们从用户的需求方面充分的考虑了本系统应该具备的要求:
①系统要具有两方面的数据处理能力
由于系统是完成图书管理工作,所以系统既要注重图书的管理又要做好图书的查询,两者皆不可偏废.
②用户界面要友好,操作要方便
为了保证系统的通用性,必须使系统的界面友好,操作方便。
③可扩充性
由于本系统开发时间短,而作者的水平又有限。
只能完成一些基本的管理工作,因此,为了以后功能的提升,所以设计时要充分考虑到以后系统功能的可扩充性。
1.3系统特点
1.页面模块化设计
在本系统地设计上都采用了模块化设计思想,把很多常用的页面和功能,专门设计为一个单一的程序文件、子程序或函数。
例如系统的头、尾文件,系统返回错误提示操作等信息。
这样,在开发过程中如果遇到使用上述模块的地方,只要用include语句调用即可,这可大大提高开发效率和系统的可维护性。
2.注重系统安全性设计
在系统进行业务处理过程中,应该非常注意系统的安全性。
不论是用户的操作失误还是受到了恶意攻击,都应及时分辨出来并提供解决方法,以提高系统的安全性。
1.4系统流程图
数据库建好之后,就要开始具体的页面设计,页面设计分前台页面设计和后台管理页面设计。
前台页面的设计功能是为用户提供一个借阅平台;后台页面的设计功能是为管理员提供一个维护平台。
为从整体上方便用户的浏览和设计,列出了一个页面文件的系统流程图,如下图1.4.1所示
图1.4.1系统流程图
第二章开发工具及运行环境概述
2.1开发工具概述
2.1.1MyEclipse开发工具的简介
MyEclipse是开源的软件开发项目,可以免费下载。
MyEclipse是Eclipse进行JavaWeb开发的插件,它是很多插件的集合。
MyEclipse是一个商业插件,是一个免费的。
MyEclipse安装有两种:
一种是完全安装;另一种是插件安装。
完全安装中集成了Eclipse,这就是说,在安装之前无须安装Eclipse,而插件安装则在安装之前必须安装Eclipse,还有一点要注意,MyEclipse6.x版本插件只能安装在Eclipse3.3或更高的版本之上。
2.1.2Tomcat服务器的简介
Tomcat是一个免费的开源的Serlvet容器,它是Apache基金会的Jakarta项目中的一个核心项目,由Apache,Sun和其它一些公司及个人共同开发而成。
由于有了Sun的参与和支持,最新的Servlet和Jsp规范总能在Tomcat中得到体现。
Tomcat被JavaWorld杂志的编辑选为2001年度最具创新的java产品,可见其在业界的地位。
Tomcat最新版本是4.0x。
4.0x与3.x的架构不同,而是重新设计的。
Tomcat4.0x中采用了新的Servlet容器:
Catalina,完整的实现了Servlet2.3和Jsp1.2规范。
Tomcat提供了各种平台的版本供下载,可以从http:
//jakarta.apache.org上下载其源代码版或者二进制版。
由于Java的跨平台特性,基于Java的Tomcat也具有跨平台性。
与传统的桌面应用程序不同,Tomcat中的应用程序是一个WAR(WebArchive)文件。
WAR是Sun提出的一种Web应用程序格式,与JAR类似,也是许多文件的一个压缩包。
这个包中的文件按一定目录结构来组织:
通常其根目录下包含有Html和Jsp文件或者包含这两种文件的目录,另外还会有一个WEB-INF目录,这个目录很重要。
通常在WEB-INF目录下有一个web.XML文件和一个classes目录,web.xml是这个应用的配置文件,而classes目录下则包含编译好的Servlet类和Jsp或Servlet所依靠的其它类(如JavaBean)。
通常这些所依靠的类也可以打包成JAR放到WEB-INF下的lib目录下,当然也可以放到系统的CLASSPATH中,但那样移植和治理起来不方便。
在Tomcat中,应用程序的部署很简单,你只需将你的WAR放到Tomcat的webapp目录下,Tomcat会自动检测到这个文件,并将其解压。
你在浏览器中访问这个应用的Jsp时,通常第一次会很慢,因为Tomcat要将Jsp转化为Servlet文件,然后编译。
编译以后,访问将会很快。
另外Tomcat也提供了一个应用:
manager,访问这个应用需要用户名和密码,用户名和密码存储在一个xml文件中。
通过这个应用,辅助于FTP,你可以在远程通过Web部署和撤销应用。
当然本地也可以。
Tomcat不仅仅是一个Servlet容器,它也具有传统的Web服务器的功能:
处理Html页面。
但是与Apache相比,它的处理静态Html的能力就不如Apache。
我们可以将Tomcat和Apache集成到一块,让Apache处理静态Html,而Tomcat处理Jsp和Servlet。
这种集成只需要修改一下Apache和Tomcat的配置文件即可。
2.2运行环境
2.2.1Struts2框架的简介
Struts2号称是一个全新的框架,但这仅仅是相对Struts1而言。
Struts2与Struts1相比,确实有很多革命性的改进,但它并不是新发布的新框架,而是在另一个赫赫有名的框架:
WebWork基础上发展起来的。
从某种程度上来讲,Struts2没有继承Struts1的血统,而是继承WebWork的血统。
或者说,WebWork衍生出了Struts2,而不是Struts1衍生了Struts2.因为Struts2是WebWork的升级,而不是一个全新的框架,因此稳定性、性能等各方面都有很好的保证:
而且吸收了Struts1和WebWork两者的优势,因此,是一个非常值得期待的框架。
ApacheStruts2是一个优雅的,可扩展的JAVAEEweb框架。
框架设计的目标贯穿整个开发周期,从开发到发布,包括维护的整个过程。
2.2.2Hibernate框架的简介
随着计算机应用软件的发展,应用程序逐渐由单层体系结构发展为多层体系结构。
其中,三层结构是目前典型的一种应用软件结构,
表述层:
提供与用户交互的界面,如GUI(图形用户界面),web页面等;
业务逻辑层:
负责各种业务逻辑,直接访问数据库,提供对业务数据的保存、更新、删除和查询操作;
数据库层:
负责存放管理应用的持久性业务数据
三层结构的特点是:
所有下层向上层提供调用的接口,具体实现细节对上层透明。
层与层之间存在自上而下的依赖关系,即上层会访问下层的API,但下层不依赖于上层。
2.2.3Spring框架的简介
Spring框架是一个分层架构,由7个定义良好的模块组成。
Spring模块构建在核心容器之上,核心容器定义了创建、配置和管理bean的方式,如图2.2.3所示。
图2.2.3Spring框架
组成Spring框架的每个模块(或组件)都可以单独存在,或者与其他一个或多个模块联合实现。
每个模块的功能如下:
☆核心容器:
核心容器提供Spring框架的基本功能。
核心容器的主要组件是BeanFactory,它是工厂模式的实现。
BeanFactory使用控制反转(IOC)模式将应用程序的配置和依赖性规范与实际的应用程序代码分开。
☆Spring上下文:
Spring上下文是一个配置文件,向Spring框架提供上下文信息。
Spring上下文包括企业服务,例如JNDI、EJB、电子邮件、国际化、校验和调度功能。
☆SpringAOP:
通过配置管理特性,SpringAOP模块直接将面向方面的编程功能集成到了Spring框架中。
所以,可以很容易地使Spring框架管理的任何对象支持AOP。
SpringAOP模块为基于Spring的应用程序中的对象提供了事务管理服务。
通过使用SpringAOP,不用依赖EJB组件,就可以将声明性事务管理集成到应用程序中。
☆SpringDAO:
JDBCDAO抽象层提供了有意义的异常层次结构,可用该结构来管理异常处理和不同数据库供应商抛出的错误消息。
异常层次结构简化了错误处理,并且极大地降低了需要编写的异常代码数量(例如打开和关闭连接)。
SpringDAO的面向JDBC的异常遵从通用的DAO异常层次结构。
☆SpringORM:
Spring框架插入了若干个ORM框架,从而提供了ORM的对象关系工具,其中包括JDO、Hibernate和iBatisSQLMap。
所有这些都遵从Spring的通用事务和DAO异常层次结构。
☆SpringWeb模块:
Web上下文模块建立在应用程序上下文模块之上,为基于Web的应用程序提供了上下文。
所以,Spring框架支持与JakartaStruts的集成。
Web模块还简化了处理多部分请求以及将请求参数绑定到域对象的工作。
☆SpringMVC框架:
MVC框架是一个全功能的构建Web应用程序的MVC实现。
通过策略接口,MVC框架变成为高度可配置的,MVC容纳了大量视图技术,其中包括JSP、Velocity、Tiles、iText和POI。
Spring框架的功能可以用在任何J2EE服务器中,大多数功能也适用于不受管理的环境。
Spring的核心要点是:
支持不绑定到特定J2EE服务的可重用业务和数据访问对象。
毫无疑问,这样的对象可以在不同J2EE环境(Web或EJB)、独立应用程序、测试环境之间重用。
第三章数据库的设计
3.1数据库需求分析
本系统主要面向的是借书学生用户和系统管理员用户,所以在数据库需求分析时主要考虑这两方面的因素。
对学生用户来说,最重要的时方便图书信息的浏览、检索和实现在线借书。
而对于系统管理员来说,最重要的时方便系统管理与维护。
根据系统用户的需求,总结出需求分析如下所示:
(1)用户分为普通学生用户和系统管理员。
(2)每本图书都属于一种图书分类。
(3)一个用户可以借阅多本图书,可以有多个借阅关系。
(4)学生用户可以开启借阅关系和取消预定。
(5)管理员可以开启和取消借阅关系。
(6)用户可以查看系统图书信息。
(7)管理员可以查找、浏览和修改系统信息、借阅关系信息等。
综合上面的需求分析,并考虑将来所要设计的应用,数据库结构设计如下所示。
图书信息:
包括书名、图书简介、作者、主编、出版社、开本、借出次数、图书状态、评级等信息。
用户信息:
包括用户名、密码、信箱、班级、学号、是否为管理员、借阅次数等信息。
借阅信息:
包括借阅号、预定时间、起借时间、结算时间等。
系统信息:
包括系统使用者、系统版权、系统描述、系统标志、系统联系方法
系统付款方案信息:
包括方案号、方案描述、价钱等信息。
图书类型信息:
包括类型ID号、类型名等信息。
开本类型信息:
包括开本ID号、类型名等信息。
系统错误信息:
包括错误号、错误描述内容、解决方法。
3.2数据库ERA模型
学生用户-图书的数据库ERA模型如图2.2.1所示
图3.2.1学生用户-图书的ERA模型
管理员用户-图书的数据库ERA模型如图2.2.2所示
图3.2.2管理员用户-图书的ERA模型
管理员用户-学生用户的数据库ERA模型如图3.2.3所示
图3.2.3管理员用户-学生用户的ERA模型
3.3用例图设计
根据系统流程图可以设计出图书管理系统的用例图。
如图3.3.1所示
图3.3.1图书管理用例图
3.4数据库的具体设计和实现
通过上面需求分析和改面结构设计,就可以将它转换成数据库系统支持的数据模型,即数据库逻辑结构。
本系统使用了MYSQL数据库。
系统图书信息表的设计如表2.4.1所示。
表3.4.1图书信息表(book)
字段名称
数据类型
数据长度
是否主键
默认值
功能描述
VI_ID_N
Int
4
是
递增1
图书编号
VI_TI_ID_FN
Int
4
否
Null
开本ID
VI_VS_ID_FN
Int
4
否
Null
类型ID
VI_PMT_ID_FN
Int
4
否
Null
付款方案
VI_Title_S
Nvarchar
50
否
Null
书名
VI_Content_S
Ntext
16
否
Null
图书简介
VI_Director_S
Nvarchar
100
否
Null
作者
VI_PlayActor_S
Nvarchar
100
否
Null
主编
VI_Issuer_S
Nvarchar
200
否
Null
出版社
VI_Rank_N
Smallint
2
否
Null
图书评级
VI_RentCount_N
Int
4
否
Null
借出次数
VI_Count_N
Int
4
否
Null
浏览次数
VI_Status_N
Smallint
2
否
Null
图书状态
VI_AddTime_D
Datatime
8
否
Getdata()
添加时间
VI_Img_S
Nvarchar
150
否
Null
图片地址
系统用户信息表的设计如表3.4.2所示。
表3.4.2用户信息表(UserInfo)
字段名称
数据类型
数据长度
是否主键
默认值
功能描述
UI_ID_N
Int
4
是
递增1
用户编号
UI_Name_S
Nvarchar
20
否
Null
用户名
UI_Password_S
Nvarchar
100
否
Null
密码
UI_Email_S
Nvarchar
50
否
Null
信箱
UI_IsAdmin_B
Bit
1
否
0
是否管理员
UI_RentCount_N
Int
4
否
Null
借书次数
UI_banji
Nvarchar
80
否
Null
班级
UI_xuehao
Nvarchar
80
否
Null
学号
系统借阅信息表的设计如表3.4.3所示。
表3.4.3借阅信息表(Tenancy)
字段名称
数据类型
数据长度
是否主键
默认值
功能描述
TAC_ID_N
Decimal
9
是
递增1
借阅号
TAC_VI_ID_FN
Int
4
否
Null
借阅图书ID
TAC_UI_ID_FN
Int
4
否
Null
借阅用户ID
TAC_ReserveTime_D
Varchar
50
否
Getdate()
预定时间
TAC_TimeOut_B
Bit
1
否
0
是否超时
TAC_MsgUser_B
Bit
1
否
0
是否通知
TAC_Return_B
Bit
1
否
0
是否归还
TAC_StartTime_D
Varchar
50
否
Null
起借时间
TAC_Lease_N
Smallint
2
否
0
借期
TAC_EndTime_D
Varvhar
50
否
Null
结算时间
TAC_UserPayment_N
Real
4
否
0
付款数目
TAC_Status_N
smallint
2
否
Null
借阅状态
系统信息表的设计如表3.4.4所示。
表3.4.4系统信息表(SysInfo)
字段名称
数据类型
数据长度
是否主键
默认值
功能描述
SI_Owner_s
Nvarchar
250
是
Null
系统使用者
SI_Copyright_S
Nvarchar
200
否
Null
版权
SI_About_S
Nvarchar
250
否
Null
系统描述
SI_Contact_S
Nvarchar
250
否
Null
联系方式
系统付款方案信息表的设计如表3.4.5所示。
表3.4.5系统付款方案信息表(Payment
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 论文