基于J2EE的图书馆管理系统设计【摘要】图书馆管理系统是典型的信息管理系统,其开发主要包括数据库的建立和维护以及应用程序的开发两个方面。对于数据库要求建立数据一致性、完整性和安全性好的数据库。而对于程序则要求程序功能简便,易于使用等特点。本文结合开放式图书馆的要求,对MySQL数据库、JSP、JavaScript以及Struts2框架应用程序设计,对数据库进行较为深入的应用,主要是对于图书管理系统的需求分析、数据库模式分析、功能模块设计分析,并设计了数据库结构和程序功能模块。本人所设计的图书管理系统完全可以满足学生、教师等借阅者、图书馆操作员以及高级管理员的需要。文章详细介绍了图书馆管理系统的开发背景及其,软硬件环境,系统需求分析,系统总体设计,系统代码设计以及后期的测试与维护中的问题。设计部分列出了几个主要的程序框架图,并附带了一些主要的窗口和程序。【关键词】信息管理系统;浏览器服务器架构;MVC框架;JSP;Librarymanagementsystem【ABSTRACT】Librarymanagementsystemisatypicalmanagementinformationsystem,whichmainlyincludestheestablishmentandmaintenanceofthebackgrounddatabaseandfront-endapplicationdevelopmentaspects.Theformerrequiredstrongdataconsistencyandintegrity.Datawithgoodsecurity.Forthelatterapplicationpowerful,easytouseandsoon.Sooneselfcombinetoopenintotherequestoftypelibrary,applyprogramdesigntotheMySQLdatabaseVisualBasic.netdatabasetechniquecarriedonmorethoroughstudyandapplication,mainlycompletingtheneedtomanagethesystemtobookanalysis,functionmoldpiecedividetheline,databasemodeanalysis,anddesigneddatabasestructurefromhereandappliedprocedure.Thispaperintroducesthebackgroundoflibrarymanagementsystemdevelopment,needsanalysis,hardwareandsoftwareenvironment,systemdesign,systemdetaileddesign,systemdesign,andpost-testcodeandmaintenanceproblems.Designsectionlistsafewmajorproceduralframeworkmap,andwithsomeofthemajorwindowsandprograms.【KeyWords】InformationManagementSystem;B/S;MVC;JSP1.绪论1.1开发背景及意义随着现阶段社会的发展,人们对知识的需求在不断地增长。在这种形势下,书籍已渐渐成为人们获取知识的主要途径,图书馆的存在可以满足人们对知识需求,因此,开发一套完善的图书馆管理系统是必不可少的,图书馆每天都要面对大量的读者和书籍的信息以及两者相互作用产生的借书、还书的信息。因此需要对读者、书籍资源、借书、还书的信息进行管理,及时准确记录各个环节中信息的变更。图书馆采取手工方式对图书借阅情况进行人工管理,数据处理的手工操作,工作量较大,出错率高,且出错后不易更改。对于这个问题,本人认为必须要建立一个图书管理系统,使图书管理工作具有规范化,系统化,程序化,提高对图书信息管理的速度以及准确性,能够及时、有效的查询和修改图书情况。1.2课题的国内外研究现状现今,国外尤其在西方发达国家由于科学技术和经济发达,图书馆行业受到很大程度的重视和发展,其图书馆在管理系统方面起步也比较早,已形成了相对完善的软件产品。而在中国,图书馆计算机管理始于1980年代初,我国的计算机技术正在快速发展,图书情报信息化建设迈上一个新的台阶。现在很多图书馆正着手建立自己的图书馆管理系统,既将传统的图书资料转换为全文数据存放于网络。只要能接入互联网,无论何时何地,您都可以获取自己所要的资料。图书馆管理系统是图书馆信息化建设的一个主要发展趋势。1.3课题的开发目标开发目标有如下7点:1能够在系统上展示图书馆的各项信息。2能够管理读者和图书的信息。3能够给读者赋予几种不同级别的阅读权限,不同级别的读者可以一次借阅不同数目的图书。4管理员通过Internet管理图书馆的各项信息,包括图书的借阅,读者图书证的办理。5能够给不同的管理员设定不同的管理权限。6能够对图书的借阅情况进行统计。7要求系统运行安全稳定。1.4课题的设计原则整个系统采用MVC模式完成。整个V层所有页面全部采用JSP完成,可以动态地显示页面中的各项数据库中查出的数据,并能做到动态的更新页面。其中也运用了JavaScript技术。比如系统中所有的菜单项都是采用的此技术,其可以使页面看起来更加简介,更加灵活,此外,由于验证部分也采用了这种技术,在一定程度上减轻了服务器端的压力。在C层运用了Struts框架技术,其接收所有表单请求,并把参数包装成对象后传递给Service层,好方便Service层调用相应的业务对象。M层是数据模型层,其包括了所有Service层和实体类,数据操作类及业务类,业务层即整个运用程序所能提供的所有服务,数据操作类为业务层服务,完成所有对数据库的操作,提供业务层完成其功能所需要的所有数据,实体类是对运用程序所涉及到的实体进行抽象后的对象,是整个程序的数据基础。1.5论文的工作和安排本次设计的目标是,开发一个图书馆借阅管理系统。借助该系统,管理员可以很方便的管理图书馆的信息资料,规范化的管理读者用户,设定不同用户权限,并能通过互联网向读者提供在线查询服务,方便读者的使用。论文设计和实现了图书管理系统,可以根据用户的不同权限,对图书馆系统的各种信息进行添加、删除、修改或查询等操作。论文分为五个部分:第一章即本章绪论,简述图书馆借阅管理系统这个课题的开发背景及意义。第二章开发工具及运行环境,本系统使用MyeclipseTomcatMySQL等工具,在Windows下,装有JDK运行环境即可运行。第三章为系统需求分析,本章中明确了系统需要实现的功能,分析了系统的用例,并介绍根据系统的需求选择的开发工具和技术的概况。第四章是总体设计,详细描述了本系统中数据库的设计情况,并给出了系统总体界面的设计方案,同时提供了个主要界面运行的参考图片,以更直观了解系统的实现情况。第五章为程序设计与编码各主要功能模块的实现方法和部分关键代码,。最后为结束语,为此次毕业设计做一个总结,总结所获得的经验和体会。2.开发工具及运行环境2.1软件环境?Struts是Apache基金会Jakarta项目组的一个OpenSource项目,它采用MVC模式,MVC模式由三部分组成。其中M代表模型Model,是应用对象,V代表视图View,是页面上的显示,C代表控制器Controller,是处理用户的请求和业务方法。MVC模式能够很好地帮助java开发者利用J2EE开发Web应用。Struts是一个面向对象设计,将MVC模式分离显示逻辑和业务逻辑的能力发挥得淋漓尽致。Struts跟Tomcat等诸多Apache项目一样,是开源软件,这是它的一大优点,使开发者能更深入的了解其内部实现机制。MySQL是一个关系型数据库管理系统,是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。由于其体积小、速度快,一般中小型网站的开发都选择MySQL作为数据库。Tomcat服务器是一个免费的开放源代码的Web应用服务器,属于轻量级应用服务器,因为Tomcat技术先进、性能稳定,而且免费,因而深受Java爱好者的喜爱,成为目前比较流行的Web应用服务器。2.2软件环境的安装和配置软件安装都很简单,其中MyEclipse、JDK和MySQL的安装软件是可运行程序。只需直接安装即可。Tomcat的安装文件是压缩软件包,只需把压缩文件解压到本地磁盘即可,安装好后需在操作系统中设置JDK以及Tomcat的环境变量。3.系统需求分析3.1基础信息维护“基础信息维护”是对图书馆的基础信息、书籍信息以及常用词库等项目进行初始化设置,这些设置一般是不轻易改动,包含的功能模块如图3-1所示。图书馆名称图书馆负责人图书馆简介说明证件有效期超期罚款金额办证费用书架编号书架名称高级管理员图书馆操作员普通用户图3-1基础信息维护功能模块3.2读者管理“读者管理“用于管理读者相关的信息,包括的功能模块如图3-2所示。图3-2读者管理功能模块3.3图书管理图书管理”用于管理图书相关的信息,包含的功能模块如图3-3所示。图3-3图书管理功能模块3.4图书流通管理图书流通管理用于管理图书流通环节相关的操作,包含如图3-4所示的功能模块。图3-4图书流通管理功能模块3.5统计分析管理统计分析管理为图书馆管理人员的分析决策提供依据,包含的功能模块如图3-5所示。图3-5统计分析功能模块3.6用例图管理员用户用例图:如下图所示图3-6超级管理员用例图图3-7普通管理员用例图3.7业务流程系统流程图如图3-8所示。图3-8系统流程4.总体设计4.1总体架构系统功能实现设计架构(如图4-1)图4-1系统架构图4.2系统功能模块设计需要强调的是,由于用户登录和权限管理的功能各个系统实现的方法是一致的,详细介绍的功能模块如图4-2所示。图4-2详细介绍的功能模块4.3数据库设计数据库由DBMS(数据库管理系统)处理,DBMS则由开发人员和用户通过应用程序直接或间接地使用。它主要包括四个要素:用户数据、元数据、索引和应用元数据。图书馆管理系统,顾名思义是对图书馆的管理而设计的一个应用程序。所以他需要收集大量的数据信息。对该设计的需求分析可以得出一下数据信息:首先,数据库中要有图书、读者的类型信息,图书、读者的相关信息,还要有读者借阅、归还图书的信息记录,以及管理员的信息等。具体的表信息如下:表名称数据表用途tb_bookinfo图书信息记录图书的基本信息tb_bookcase图书书架记录并保存书架号等特征tb_purview用户权限信息记录保存用户权限信息tb_borrow图书借阅记录对图书借阅信息的记录tb_giveback图书归还记录对图书归还信息的记录tb_publishing出版社信息记录并保存出版社信息tb_manager管理员信息记录并保存管理员信息tb_parameter参数信息记录并保存相关参数tb_booktype图书类型记录并保存图书类型信息tb_library图书馆基本信息记录并保存图书馆基本信息表4.1图书管理系统数据表清单因为整个系统涉及的实体和属性较多,限于篇幅不能也没有必要一一列举。图4-3为图书馆管理系统关键实体的E-R图。其他实体与基本信息表间的对应关系都是类似的。图4-3系统E-R图4.4系统类图设计图书与图书类型图书书架之间的类图如图4-4所示:图4-4图书类图读者,类型,管理员之间的类图关系如图4-5所示:图4-5读者类图4.5登录界面设计登录界面是系统与用户的主要交互界面,其设计的好坏直接影响系统的性能,这里力求达到界面友好、信息直观和操作方便。本程序运行后的效果如图4-6所示。首先是登陆页面。图4-6登录页面登陆后显示的是主页,主页显示图书的借阅排行榜。如图4-7所示,其显示图书的详细信息,