基于三大框架的图书管理系统毕业设计论文正文初稿.docx
- 文档编号:12191165
- 上传时间:2023-04-17
- 格式:DOCX
- 页数:23
- 大小:283.59KB
基于三大框架的图书管理系统毕业设计论文正文初稿.docx
《基于三大框架的图书管理系统毕业设计论文正文初稿.docx》由会员分享,可在线阅读,更多相关《基于三大框架的图书管理系统毕业设计论文正文初稿.docx(23页珍藏版)》请在冰豆网上搜索。
基于三大框架的图书管理系统毕业设计论文正文初稿
编号
毕业设计(论文)
题目基于三大框架的图书管理系统
二级学院数学与统计学院
专业信息与计算科学
班级112010102
学生姓名郭双红学号***********
指导教师李明职称
时间2016/4/20
摘要
伴随着计算机技术、网络技术、通信技术、信息技术的发展大潮,计算机、通信技术两大平台在人们生活中发挥了前所唯有的巨大作用。
大大提升了人们的工作效率,现大多企业为了快捷的自动化管理,都引进了计算机信息管理系统。
各个图书馆或是一些商业内部,在其运作过程中还存在着大量的书籍、读者的信息和两者之间相互作用产生的借书、还书信息。
为了及时准确地了解各环节中信息传递,还要及时地处理因此而产生的数据信息,而图书馆里系统便帮其解决了一切。
通过对各个高校的图书馆里系统调查和研究,再结合计算机信息处理系统机制,开发了本图书馆里系统。
本文中主要阐述了一些图书馆基本的管理事务,还简单介绍了普遍性问题的研究背景。
然后对整个系统全面的进行了可行性分析,按照系统的需求、设计和测试等步骤,一步一步的形成整个系统的过程。
本系统基本框架使用的是现在普遍流行的三大开源框架Struts2、Hibernate和Spring。
用户界面使用的JSP网页页面,采用MVC设计模式。
后端数据库使用的是MYSQL。
系统的整个功能模块包括图书借阅管理、图书管理、用户登陆管理、借书证管理等。
图书借阅管理实现了学生对图书的一系列操作的功能,包括借书,还书和浏览图书等;图书管理是对图书的增删查改等功能;用户登录管理功能是判定用户和管理员之间的权限再对登录者的能操作的范围进行划分;借书证管理是对方便对学生进行管理,每个学生对应唯一的一个借书证,方便对学生实行增删改查等。
系统测试后表明,此系统大致实现了图书馆里系统基本满足的的几项功能,大致能够实现普通高校图书馆的需求。
系统测试结果表明,本系统实现了图书馆图书管理的主要功能,基本满足图书管理的需要。
关键词:
图书管理系统JSPSTRUTS2HIBERNATESPRINGMYSQL
1 绪论
1.1 传统图书馆现状和早期的图书馆里系统
近年来,随着图书馆规模的持续扩展,图书管相关文献的数量也在持续大量的增加,针对这巨大的信息量,旧的传统的人工管理方式将会造成图书馆在管理上混乱,加上人力与物力资源的大量浪费,使得图书馆必须在管理大量投资,造成不必要的损失。
再者导致图书馆的承受的压力太大,将会影响到整个图书馆全局。
后来随着计算机信息处理系统的广泛应用,便出现了图书管理系统,大致的解决了传统图书馆的一些问题。
然后早期的图书馆里系统也是存在缺陷的。
早期图书馆管理的局限性大致可以概括为以下几点:
(1)查询慢、低效率
因为一般的图书馆的文献种类数量庞大。
要准确无误地将各个文献的归类,快速检索,是手工非常难以完成的,就比如查到了某一本书的信息,图书馆里却没有该书或者别人已经将它借走。
这个问题跟图书馆规模相关,规模越大,问题就越明显。
(2)借还量大
借书、还书的数量越大,说明图书馆越受人们的欢迎,但是由此产生的信息量也大。
巨大的借、还书量信息、图书更新信息以及图书超期信息或者图书丢失信息,要处理起来,其工作量是人工操作难以解决的,由此产生的管理费用也是一个庞大的数字。
处理过程中还有很大的机率产生一些意想不到的错误。
(3)难统计、难更新
图书的数量难以统计,图书也得不到快速的更新,这个问题也是最严重的问题。
根据教学的需求和文化的发展,图书馆的图书应该得到及时的更新,包括添加和删除。
但是因为文献的数量及种类繁多,再加上人为的破坏和自然的损耗,使图书的统计工作难以按时完成,文献也就难以更新,文献的知识结构不能够持续的扩展。
现各个高校的图书馆发展速度都比较快,图书馆的规模在慢慢扩大,文献数量也在不断增加,为了方便图书馆的管理和解决学生与图书馆之间产生的一系列问题也就迫在眉睫了。
1.2 图书管理系统的意义
伴随着计算机技术、网络技术、通信技术、信息技术的发展大潮,计算机、通信技术两大平台在人们生活中发挥了前所唯有的巨大作用,标志着数字化时代的来临。
各个图书馆或是一些商业内部,在其运作过程中还存在着大量的书籍、读者的信息和两者之间相互作用产生的借书、还书信息。
为了及时准确地了解各环节中信息传递,还要及时地处理因此而产生的数据信息,现各个机构为了自动化管理其内部对图书各种操作信息,为了能够更加高效的满足读者的要求,提高效率,数字化图书管理系统便随着发展应运而生。
本系统实现了自动化管理图书的借阅和图书归还,及时的更新、添加和删除图书。
本系统的核心功能模块是图书借阅管理、图书管理、用户登陆管理、借书证管理。
除此之外,还包括图书的查询和学生的管理等。
本系统设计的核心目的是:
设计一个图书馆管理系统,系统的主要功能包括三个部分,图书管理、图书借还以及图书查询。
在图书管理模块中主要实现添加新用户(添加借书证)、图书添加、记录借书还书信息、更新图书信息等常用功能;在图书查询模块中,用户可以在用户界面使用不同的条件查询相关的图书信息,例如图书种类,作者,书名,出版社等。
(1)系统前端:
用户界面,供用户使用,用户登录后可以拥有的操作权限包括用户可以查看自己当前和历史借阅的图书信息;用户可以按照不同的条件查询图书馆中的图书并借阅。
(2)系统后端:
管理员界面,管理员登陆后拥有的操作权限包括 添加新的用户,图书的增删查改操作,记录用户的借书还书信息。
1.3 开发条件
1.3.1S2SH框架
S2SH框架指的是Struts2、Hibernate、Spring三大开源框架,是当前主流的框架,并且是免费开源的。
图书管理系统用S2SH技术进行开发,采用了MVC结构,主要可以分为3层,表示层、业务逻辑层、数据持久层。
帮助开发人员可以清晰的搭建系统结构,复用性强,维护比较方便。
其中用Struts2作为系统的基础,负责MVC的分离,控制业务的跳转。
Hibernate框架是对系统的持久层支持,Spring则负责管理Struts2和Hibernate。
系统表示层主要是通过JSP页面实现对用户之间的交互,接收用户的请求并传送到响应的业务层,业务层负责处理用户的请求的涉及到的业务逻辑,持久层则依赖于Hibernate的ORM映射与数据库进行交互,处理请求的数据并返回结果到表示层。
开发思维清晰明确,开发过程流畅,大大的提高的开发的效率。
1.3.2Tomcat
Tomcat 服务器是Apache软件基金会(ApacheSoftwareFoundation)的Jakarta项目开发的一个免费的服务器软件。
Tomcat服务器能够兼容许多开发平台,Tomcat技术先进、拥有稳定的性能,还是免费开源的,发展前景好,因而广泛受到Java爱好者和许多软件开发商的喜爱,成为了当前主流的小型Web服务器。
1.3.3MYSQL
MYSQL是一个免费开放源码的关联式数据库管理系统。
原开发者为瑞典的MYSQL公司,2008年该公司被sun公司收购。
后一年甲骨文公司(Oracle)又收购sun公司,因此MYSQL成为了Oracle旗下的产品。
MYSQL数据库被广泛地应用在互联网上的一些中小型网站中。
原因是MYSQL数据库具有体积小、速度快、成本低的特点,再加上是免费开放源码这一特点,许多中小型网站为了降低网站总成本而选择了MYSQ数据库作为网站数据库支持。
MYSQL所使用的SQL语言是用于访问数据库的最常用标准化语言。
1.3.4JSP
JSP是由Sun公司倡导和许多公司参与共同创建的一种使软件开发者可以响应Client请求,而动态生成XML、HTML或以其他不同格式文档的Web网页的技术标准。
JSP技术有点类似ASP技术,它是在传统的网页HTML文(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件(*.jsp)。
JAVA语言是JSP技术的脚本语言,JSP技术在整个服务器端提供了一个JAVA库单元Interface来服务于HTTP的应用程序。
用JSP开发的WebApplication是跨平台的,既能在Linux下运行,也能在其他操作系统上运行。
2 可行性分析
本系统是跟随了现代化统一的CompetitionInformationNetworkSystem,不仅能够使图书馆管理系统更加有效化,高效化,还能给用户提供更加迅捷便利的服务。
2.1 技术性
本系统采用的开发技术均属于当前主流的开发技术,效率高,性能好,高安全性,稳定性,技术成熟,并且能够在配置比较低的兼容性相对较低的操作系统上运行,当然配置肯定是越高越能体现此系统的优点。
本系统总框架是采用的S2SH框架。
其中,Struts2框架是一个统一的开源的却不失标准的框架,Struts2提供了一个很有效的method,使使用者可以在同一个网络应用中在使用JSP的同时还能使用ServletInterface。
Struts2框架本身就结合了Servlet和ServerPages两个网络接口技术,也是标准化的MVC结构。
它的目的就是要在一个网络系统中把以JSP 独立实现或者以Servlet独立实现分离开来。
Struts2中的MVC结构把JSP和Servlet两大Interface技术结合起来同时工作。
在这个结构层次中,Servlet就类似Model层。
这就表明了,Servlet是控制输入的request和输出的respond。
JSP是用户可见页面,即显示层(视图),使用户和网络应用相互联系,给用户提供各种输入request,接收用户的请求作为数据然后传递给Servlet。
该页面应该不包括其他脚本文件。
由此可知,Struts2架构的优势就显而易见了。
首先,它将显示和逻辑处理分离成两个层次,相互独立又相互联系。
因此产生的结果也很令人满意,在用户界面上不会出现一丁点逻辑处理的过程,显得非常简洁和清晰。
在逻辑处理层没有复杂的数据,这种“相互独立”的另一个优势是擅长业务处理的可以专注于对应部分的代码,而擅长页面编写者可以专注于编写用户界面。
其次,Servlet作为控制器负责处理用户界面传来的所有request。
在JSP页面和逻辑层中不会出现决策性问题。
这就提高了这个网络应用系统的可扩展性和效率。
再者Struts2框架支持多平台性:
Struts2是目前运用最广泛最流行的主流框架,关于它的资料相当的多,在遇到难题的时候也可以在互联网上寻求到相关联的资料和答案。
Struts2框架的JSP用户完善的标签库:
相对于其他框架,Struts2提供了最完善的标签库,开发网络应用程序将是极为的方便。
另外,Struts2也得到许多开发工具的支持,比如JavaIDE这种大型的开发工具,当然还有其他的一些专用的插件和辅助工具也支持Struts2,这是其他框架不可与之相比拟的。
2.2 经济性
本系统兼容性高,资源需求量低,具有成本低但是效益高的特点,经济上完全可行。
2.3 可操作性
开发本系统的意义是为了使图书管理更加便捷,增添图书馆的吸引力。
完整的系统具备有简洁、美观、清晰、易上手等优点,即使是不具备计算机知识的人员也可以很快上手,用户使用起来也很方便。
它的易操作性让本系统在操作上具有可行性。
3 需求分析
3.1 需求概述
本系统的主要功能包括三个部分,图书管理、图书借还以及图书查询。
其中又涉及了学生信息的管理和借阅信息的管理,按管理业务可将整个管理系统分为三大类:
用户管理、图书信息管理、读者数据管理。
用户管理主要有添加用户、修改用户、删除用户。
这里的用户指的是系统管理员。
图书信息管理主要有添加图书、修改图书、删除图书以及图书借阅信息管理。
读者数据管理涉及到读者借书和还书的信息管理。
图书借阅者的需求是查询图书馆中现有的图书。
又涉及了个人的借阅信息和借阅者信息的修改;图书馆管理员拥有操作借阅者的借书还书信息的权限,另外还将借书或还书的信息给借阅者查看并确认是否有误;这之中,图书管理员的功能最多也最复杂,不仅拥有借阅者所有的功能,还包括对学生信息管理,图书信息管理的维护、借阅信息管理等。
图书馆管理员管理借阅者的基本信息,包括查询、增添、更新、删除等;管理图书借阅信息,同样也包括查询、增添、更新、删除等。
3.2 功能需求分析
在本图书管理系统中,从读者角度来说,首先他们主要就是可以查询到图书馆中现有的所有图书信息,其次是查询自己的借阅信息,也就是借过什么书,还有多久到期或者到期多久了之类的问题。
由此可以总结出本系统一些需求。
3.2.1读者功能分析
(1)图书信息查询:
读者即借阅者可以根据图书的书名、作者名、图书类型、出版社等进行查询。
(2)借阅者信息查询,包括以下几个方面:
①读者本身信息:
对读者自身的基本信息进行查询。
②图书借阅信息:
对读者自身历史借阅信息进行查询。
③图书超期信息:
对读者借阅的已经超期的图书信息进行查询,也可以归结到图书借阅信息中。
3.2.2图书管理员功能分析
本系统中,图书管理员的功能需求包括以下几个方面:
(1)查看并管理图书馆中可以被借阅或者不可被借阅的图书;
(2)管理借阅者的借阅信息;
(3)管理学生信息,包括增删查改等一系列操作。
3.2.3系统总功能分析
本系统的主要几个核心功能,包括以下几点:
(1)图书查询:
查询现有图书;
(2)图书管理:
对现有图书的增删查改等一系列操作还包括图书超期管理;
(3)借阅管理:
管理借阅者的借阅信息和图书被借阅信息;
(4)学生管理:
对学生的增删查改等一系列操作;
4 系统设计
4.1系统设计概述
(1)本系统在有限的软件开发环境中,参考其他先进的ManagerSystem开发方案,利用现有的资源尽量提高系统的性能。
(2)本系统应尽量满足图书馆管理工作中所需求的大部分功能,系统操作应简单、直观、方便,结果要保证准确无误,系统的安全性也要达到相应的标准。
(3)系统应该符合SoftwareEngineeringDevelopment的理论、开发方法等依据。
(4)本系统采用的是MYSQL数据库,同时系统应该及时的进行数据维护。
(5)本系统功能实现模块化,各个模块负责相应的逻辑业务,便于系统维护和测试。
(6)本图书管理系统应具有扩展性和实用性,尽量适应各个高校图书馆的发展。
4.2设计思想
本系统的设计思想是OOP程序设计思想,采用了当前流行的MVC(Model—View—Controller)架构。
MVC架构一般被用于分布式应用程序。
这种面向对象的思想能有助于将应用程序分割成若干逻辑部件,使程序设计思路更加清晰,过程更加简单。
MVC架构把一个应用的Input、Handling、Output流程按照Model—View—Controller的层次分离,将应用被分成三个层次——Model层、View层、Controller层。
图4-1MVC模式
MVC三层架构的出现,良好的解决旧版本WebApplication开发方式中存在的问题。
M层:
模型(Model)层,包含一系列操作行为和需要处理的数据;V层:
视图(View)界面,也是直接与用户相互的界面,接收用户的一系列请求并作为数据传递给Model层;C层:
控制器(Controller),它将模型映射到界面中,负责处理用户的输入和操作请求。
其模型关系如图4-1所示。
在MVC三层架构中,三层相互独立、各尽其职,某一层内部出现了问题也不会影响到其他层,从而降低了系统的耦合度,提高了性能。
在系统设计过程中也能够分工发开,加快进度。
4.3系统功能概述
本系统包含五个核心模块:
系统登录、图书查询、借阅信息管理、学生信息管理、图书管理。
系统登录模块:
系统登录一般用于管理员,管理员要登录才能进入系统,拥有管理员权限。
也可以用于普通用户的登录。
用户在登录时,程序后台会判断登录者的权限类型,权限包括普通用户权限和系统管理员权限,普通用户权限只能对书籍进行浏览及个人借阅信息的查询,管理员则拥有很多复杂的功能,负责管理和维护系统。
图书查询模块:
在用户查询界面,用户能够根据书名,作者名、书的种类、出版社等多种条件在现有的图书库中查询图书。
借阅信息管理模块:
这个模块是系统最核心的模块之一,该模块中管理员管理读者的一切借阅信息,还包括了图书归还和图书超期后欠款的操作。
学生信息管理模块:
学生管理是由管理员负责,同样的,管理员可以在此模块中添加新用户,以及对用户信息进行更新,删除等操作。
图书管理模块:
图书管理是由管理员负责,管理员登录系统后,可以进入到图书管理界面,拥有对图书进行增删改查等一系列的操作权限。
整体系统模块如图4-2所示:
图4-2系统总功能
4.4系统各个功能模块概述
4.4.1系统登录
用户进入系统时即启用该模块。
该模块根据用户登录指令来判断用户的类型,然后分配相应的权限,再跳转到相应的用户页面。
此模块的功能包括:
(1)验证用户名是否存在,用户名和密码是否匹配;
(2)跟陆用户的指令判断用户类型,分配相应权限,跳转到相应页面。
登录功能模块过程如图4-3所示:
图4-3登录模块
4.3.2图书管理模块
由管理员负责,管理员登录系统后,进入到图书管理界面后,拥有对图书进行增删改查等一系列的操作权限,本模块的功能点如下:
(1)添加图书:
添加新的图书,并按其类型把图书的所有信息加入到数据库中;
(2)修改图书信息,在图书录入期间,可能由于工作人员的疏忽,导致图书信息的错误,管理员可以根据其图书ID修改相应的图书信息;
(3)移除图书,图书馆中的某一部分图书会随着时间推移某一部分知识得不到更新而变得收藏价值过低或者不再具有收藏价值,又或者图书损坏,不得不从图书库中移除。
图书管理模块操作过程如图4-4所示:
图4-4图书管理模块
4.3.3学生管理模块
学生管理是由管理员负责,管理员可以在此模块中添加新用户,以及对用户信息进行更新,删除等操作,每个学生都会对应一个唯一的借书证,因此对学生信息管理即对学生借书证信息管理。
本模块的功能点包括:
(1)添加用户:
办理借书证,填入对应学生的基本信息;
(2)删除用户:
根据学生借书证上的ID删除此学生的信息,即删除此借书证。
(3)修改用户:
办理借书证期间如果出现了信息录入错误可以根据借书证ID对其信息进行改正。
(4)用户挂失:
把借书证的状态改为挂失状态,暂时失去一部分功能。
借书证管理模块操作情况如图4-5所示:
图4-5借书证管理模块
4.3.4借阅信息管理模块
此模块中管理员对读者的一切借阅信息进行管理,还包括了图书归还和图书超期后欠款的操作。
功能点如下:
(1)图书借阅:
记录借书证ID和图书ID,进行图书的借阅过程。
之后在数据库中插入该借书记录,该记录包括了借阅日期、图书ID、借书证ID、归还日期等;
(2)图书归还:
需要借书证ID,和图书ID,根据图书编号ID在借阅登记表中找到并删除相应的记录,然后在历史借阅记录信息表中更新该借阅记录;
(3)查看借阅记录:
查看学生的借阅记录或者图书的借阅记录,需要借书证编号以及图书编号。
(4)还款:
图书超期后会根据超期时间生成相应的欠款,需要借书证编号。
借阅信息管理模块操作情况如图4-6所示:
图4-6借阅信息管理模块
4.3.5图书查询模块
在用户查询界面,用户能够根据书名,作者名、书的种类、出版社等多种条件在现有的图书库中查询图书。
本模块的功能点如下:
(1)以图书编号为条件查询;
(2)以书名为条件查询;
(3)以作者名为条件查询。
(4)以图书类型为条件查询。
此模块流程图如图4-7所示:
图4-7图书检索模块
4.4数据库设计
4.4.1关系模型设计
(1)实体图
学生属性:
姓名、学号、性别、班级、学院、电话、密码、已借书数量、创建日期、Email、地址、宿舍。
学生实体图如图4-8所示:
图4-8学生实体图
图书:
图书属性有图书编号、书名、作者、类别、单价、出版社、出版日期、总数量、当前数量、购买日期、内容摘要。
图书实体图如图4-9所示:
图4-9图书实体图
(2)E—R图
根据以上实体图,分析了各个实体的属性,根据这些属性,可以得到系统的E—R图,如图4-10所示
1n
nn
1n
图4.8系统E-R图
4.4.2逻辑结构设计
根据上述功能模块的需求,设计如下主要数据库表:
表4.1图书信息表(t_book)
字段英文名称
字段中文名称
字段类型
字段约束
是否可为空
Book_num
图书编号
Varchar2(15)
主键
否
Book_name
书名
Varchar2(20)
否
Writer
作者
Varchar2(10)
否
Sort_id
类加ID
Varchar2(5)
否
表4.1图书信息表(t_book)续表01
Price
单价
Number(5.2)
是
Pub_company
出版社
Varchar2(20)
是
Pub_date
出版日期
Date
是
Total_num
总数量
Number(3)
否
Current_num
当前数量
Number(3)
否
Buy_date
入库日期
Date
否
Brief
内容摘要
Varchar2(100)
是
表4.2学生信息表(t_student)
字段英文名称
字段中文名称
字段类型
字段约束
是否可为空
Student_num
学号
Varchar2(15)
主键
否
Student_name
姓名
Varchar2(10)
否
Password
密码
Varchar2(20)
否
Academy_id
学院ID
Varchar2(10)
否
Class_id
班级ID
Varchar2(10)
否
Sex
性别
Varchar2
(2)
是
Telephone
电话
Varchar2(15)
是
Varchar2(20)
是
Lended_num
已借书数量
Number
(2)
默认为0
否
Create_date
创建日期
Date
否
表4.3借阅信息表(t_book_student)
字段英文名称
字段中文名称
字段类型
字段约束
是否可为空
Id
ID号
Varchar2(35)
主键
否
Book_id
图书编号
Varchar2(15)
否
Student_id
学号
Varchar2(15)
否
borrow_date
借书日期
Date
否
return_date
还书日期
Date
否
Money
超期罚款
Number(5.2)
否
表4.4管理员表(t_admin)
字段英文名称
字段中文名称
字段类型
字段约束
是否可为空
Admin_id
管理员ID
Number(5)
主键
否
Admin_name
管理员姓名
Varchar2(10)
否
Admin_password
管理员密码
Varchar2(2
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 框架 图书 管理 系统 毕业设计 论文 正文 初稿