完整版图书管理系统毕业设计.docx
《完整版图书管理系统毕业设计.docx》由会员分享,可在线阅读,更多相关《完整版图书管理系统毕业设计.docx(34页珍藏版)》请在冰豆网上搜索。
![完整版图书管理系统毕业设计.docx](https://file1.bdocx.com/fileroot1/2022-12/13/71aaafa7-3c84-4c2d-88d4-9dcf3b6c65ba/71aaafa7-3c84-4c2d-88d4-9dcf3b6c65ba1.gif)
完整版图书管理系统毕业设计
摘要
图书馆是学校的一个重要部门,而图书的管理又是图书馆中重要的一个环节。
因为图书馆丰富的图书资源能够带给我们许多有价值的信息。
为此,通过对图书管理的运行管理机制进行调查研究后,开发了此图书系统。
本系统中解决了学校图书管理事务中常用基本问题以及相关统计工作。
本系统中包含5个大的功能模块:
图书管理,读者管理,借还管理,系统管理和前台查询。
图书管理模块主要完成对图书信息的增加、删除和修改的功能;读者管理模块主要完成对读者信息的增加、删除和修改的功能;借还管理模块主要完成图书的借阅、归还、续借和到期提醒的功能;系统管理模块主要完成管理员的增加、删除和修改功能以及不同管理员权限的分配的功能。
本系统核心技术采用了Web开发中当今比较流行Struts2+Spring+Hibernate三个框架组成的典型的MVC(MVC全名是ModelViewController,是模型(model)-视图(view)-控制器(controller)的缩写)模型,具有开发效率高、设计灵活、生成的软件界面友好美观等特点。
其中,Struts2框架的应用着重表现在控制上,本系统用来完成页面的控制跳转;Spring是一个开源的控制反转(InversionofControl,IoC)和面向切面(AOP)的容器框架。
它的主要目得是简化企业开发;Hibernate框架是一个非常优秀的ORM(ObjectRelationMapping对象关系映射)框架,用来完成数据的持久层应用。
本系统的前台界面开发使用的是JSP和JavaScript技术。
JSP即JavaServerPages,是目前非常流行的动态网页技术;JavaScript是一种功能强大的基于对象的脚本语言,可直接嵌入HTML语言。
后台的数据库是SQLServer。
该数据库具有较高的完整性,一致性和安全性。
关键词:
图书管理;MVC模型;Struts2;Spring;Hibernate;数据库
ABSTRACT
Libraryisanimportantdepartment,themanagementofschool’slibraryisanimportantlinkinthelibrary.Becausethelibrarybooksresourcescanbringusalotofvaluableinformation.Therefore,throughtothebooksmanagementoperationmanagementmechanismafterinvestigationandresearch,thisbooksystemisdeveloped.Thissystemsolvesthebasicproblemiscommonlyusedintheschoolbooksmanagementaffairsandrelatedstatisticalwork.
Thissystemcontainsfivebigfunctionalmodules:
booksmanagement,readermanagement,circulationmanagement,systemmanagementandqueryatthefrontdesk.Booksmanagementmoduleismainlytocompletethebookinformationincrease,delete,andmodifyfunction;Informationmanagementmodulemainlycompletethereadersincrease,delete,andmodifyfunction;Managementmodulemainlyborrowedbooksborrowing,return,renewandduetoremindfunction;Systemmanagementmodulemainlycompletetheadministrator'sincrease,deleteandmodifythefeaturesandfunctionsofthedistributionofthedifferentadministrativeprivileges.
ThecoretechnologyofthissystemadoptsaWebdevelopmentintoday'spopularStruts2+Spring+HibernatethreeframeworksoftypicalMVC(MVCfullnameistheModelViewController,istheModel(Model)-View(View)Controller(Controller)abbreviation)Model,withdevelopmentof,beautifulgeneratedsoftwarefriendlyinterface,etc.Amongthem,theStruts2framework,applicationmainlyonthecontrolperformance,thesystemusedtocompletethepagecontroljump;SpringisanopensourceInversionofControl(IoC)InversionofControl,andtheaspectoriented(AOP)containerframework.Itsmainpurposeistosimplifyenterprisedevelopment;HibernateframeworkisaverygoodORM(ObjectbaseMappingObjectrelationalMapping)framework,andusedtocompletethedatapersistencelayeroftheapplication.
ThefrontdeskinterfacedevelopmentofthissystemisusedJSPandJavaScripttechnology.TheJSPorJavaServerPages,iscurrentlyverypopulardynamicwebtechnology;JavaScriptisapowerfulscriptinglanguagebasedonobject,canbedirectlyembeddedintoHTML.ThebackgrounddatabaseisSQLServer.Thedatabase),而用Struts2来完成页面的控制跳转。
4软件简介及环境的搭建
4.1MyEclipse简介
MyEclipse企业级工作平台(MyEclipseEnterpriseWorkbench,简称MyEclipse)是对Eclipse的扩展,利用它我们可以在数据库和JavaEE的开发、发布以及应用程序服务器的整合方面极大的提高工作效率。
它是功能丰富的JavaEE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML、Struts、JSP、CSS、JavaScript、Spring、SQL、Hibernate。
4.2SQLServer简介
SQLServer是Microsoft公司推出的一个关系数据库管理系统。
具有使用方便,可伸缩性好与相关软件集成程度高等优点。
4.3Tomcat简介
Tomcat服务器是一个免费的开放源代码的Web应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP程序的首选。
4.4开发环境的搭建步骤
1)安装与配置JDK1.6.0_14。
2)安装Tomcat6.0。
3)安装MyEclipse8.5。
4)配置在MyEclipse中配置Tomcat服务器。
a)单击工具栏的黑小三角或者单击菜单栏窗口—>首选项,出现首选项对话框,在对话框的左边框中找到MyEclipse—>ApplicationServers下找到Tomcat选项,如图4-4-1。
图4-4-1
₪根据自己的Tomcat版本选择相应的Tomcat选项(我的是6.0版本),然后在对话框右侧的Tomcat.webtier:
放置对应的用户自定义的Action类。
由Action类调用业务逻辑来处理用户请求,然后控制跳转。
₪zhaoxin.dao:
放置DAO(数据访问对象)的接口和实现DAO接口的类。
DAO(数据访问对象)的接口中的方法用来和数据库进行交互,这些方法由实现它们的类来实现。
₪zhaoxin.domain:
放置表对应的POJO实体类及映射文件*..service:
放置业务逻辑接口和实现业务逻辑接口的类。
接口中的方法用来处理用户请求,这些方法由实现接口的类来实现。
₪zhaoxin.util:
放置公用的工具类。
5.4主要配置文件
5.4.1web.xml配置
xmlversion="1.0"encoding="UTF-8"?
>
xmlns:
xsi="="xmlnsjavaee
xmlnsjavaeeweb-app_2_5.xsd">
contextConfigLocation
WEB-INFapplicationContext.xml
org.springframework.web.context.ContextLoaderListener
Struts2Filter
org.apache.struts2.dispatcher.FilterDispatcher
Struts2Filter
*
dwr-invoker
org.directwebremoting.servlet.DwrServlet
debug
true
--新加corssDomainSessionSecurity参数
参数corssDomainSessionSecurity是在dwr版本2.0才有的.默认值为true,也就是禁止其他域发送请求.若设置成false后,就能够从其他域进行请求但这样做会在安全性上有一些冒险.。
。
-->
crossDomainSessionSecurity
false
1
dwr-invoker
dwr*
--检视pooling现在状态-->
Admin
org.logicalcobwebs.proxool.admin.servlet.AdminServlet
Admin
a-proxool
index.jsp
5.4.2struts.xml配置
xmlversion="1.0"encoding="UTF-8"?
>
DOCTYPEstrutsPUBLIC
"-ApacheSoftwareFoundationDTDStrutsConfiguration2.0EN"
".encoding"value="UTF-8">
backerror.jsp
method="{1}">
frontshowBorrowedBooks.jsp
frontindex.jsp
frontshowBorrowedBooks.jsp
frontupdateReaderInfo.jsp
class="zhaoxin.webtier.back.BookInfoAction"method="{1}">
backshowAllBook.jsp
backupdateBook.jsp
class="zhaoxin.webtier.back.BookTypeAction"method="{1}">
backshowBookType.jsp
backupdateBookType.jsp
method="{1}">
backshowBorrowedBook.jsp
backwarningBack.jsp
backborrowBook.jsp
backgiveBackBook.jsp
class="zhaoxin.webtier.back.OperatorUtilAction"method="{1}">
backindex.jsp
backmain.jsp
backoperatorLogin.jsp
class="zhaoxin.webtier.back.ReaderInfoAction"method="{1}">
backshowAllReader.jsp
backupdateReader.jsp
class="zhaoxin.webtier.back.ReaderTypeAction"method="{1}">
backshowAllReaderType.jsp
backupdateReaderType.jsp
class="zhaoxin.webtier.back.SysLiberInfoAction"method="{1}">
backupdaiberInfo.jsp
backmain.jsp
class="zhaoxin.webtier.back.SysOperatorAction"method="{1}">
backshowAllOperator.jsp
backupdateOperator.jsp
5.4.3applicationContext.xml配置
xmlversion="1.0"encoding="UTF-8"?
>
class="org.springframework.orm.">
value="classpath:
>
--声明Hibernate事务管理器-->
class="org.springframework.orm.>
--声明事务拦截器-->
class="org.springframework.transaction.interceptor.TransactionInterceptor">
--设置事务管理策略-->
PROPAGATION_REQUIRED,readOnly
PROPAGATION_REQUIRED
--声明代理创建-->
class="org.springframework.aop.framework.autoproxy.BeanNameAutoProxyCreator">
--指定需生成业务代理的Bean-->
frontFacade
sysLiberInfoFacade
bookInfoFacade
bookTypeFacade
borrowFacade
readerInfoFacade
readerTypeFacade
sysOperatorFacade
operatorUtilFacade
DWRMethods
--调用事务拦截器-->