试题题库图书管理系统分析与设计信息管理与信息系统毕业论文精华版Word文件下载.docx
《试题题库图书管理系统分析与设计信息管理与信息系统毕业论文精华版Word文件下载.docx》由会员分享,可在线阅读,更多相关《试题题库图书管理系统分析与设计信息管理与信息系统毕业论文精华版Word文件下载.docx(43页珍藏版)》请在冰豆网上搜索。
![试题题库图书管理系统分析与设计信息管理与信息系统毕业论文精华版Word文件下载.docx](https://file1.bdocx.com/fileroot1/2023-1/4/30ef551c-a628-4d16-b565-5fd667945e14/30ef551c-a628-4d16-b565-5fd667945e141.gif)
为了弥补上述缺陷,便于图书的维护和借阅,提高借/还书的效率,开发出此图书管理系统,以解决工作效率低下的问题,实现图书馆管理的信息化与现代化。
1.2研究现状
随着计算机及网络技术的飞速发展,Internet/Intranet的应用在全球范围内日益普及,当今社会正快速向信息化社会迈进,信息系统的作用也越来越大。
图书馆在正常运营中总是面对大量的读者信息,书籍信息以及由两者相互作用产生的借书信息、还书信息。
因此图书管理信息化是发展的必然趋势。
用结构化系统分析与设计的方法,建立一套有效的图书信息管理系统,可以减轻工作,将工作科学化、规范化,提高图书馆信息管理的工作质量,因此根据图书馆目前的实际管理情况开发一套图书管理系统是十分必要的。
第二章系统分析
2.1需求分析
1.系统需求(SystemRequirements)
对于该图书管理应用系统来说,其基本的需求规范可以归纳如下:
1.1学生用户端
●查询图书,学生用户可以通过查询图书馆的图书信息找到自己需要的书。
●预约图书,如:
需要借的书已经借出,便可以进行图书预约。
●学生用户可以进入系统查询自己的基本信息,如:
当前借阅、历史借阅等信息。
●挂失图书,图书如果丢失,可以在学生用户端进行挂失。
1.2管理员端
●学生用户管理,对学生用户信息可以进行增、删、改、查的操作。
●图书管理,包括对图书的增、删、改、查。
●借阅管理,对学生用户借书和归还书的处理。
●管理员管理,分为超级管理员和普通管理员,拥有权限的控制。
2.需求分析(RequirementsAnalysis)
需求分析的目的是捕获和描述所有的系统需求,并且建立一个模型来定义系统中的主要问题域类。
通过需求分析达到开发者和需求者的理解和沟通。
综上分析可得出学生用户端和管理端的用例图图2-1如下
图2-1学生用户端、管理员端用例图
2.2可行性分析
可行性分析是对项目可实行程度进行分析,其包括技术可行性、经济可行性、营运可行性。
图书管理系统分析与设计主要目的是利用数据库软件编制一个管理软件,用以实现图书、读者以及日常工作等多项管理。
同时对整个系统的分析、设计过程给出一个完整的论证。
1.引言
图书是人类获取知识的重要的途径之一,现在大多数的图书管理方式为手工处理,重复劳动多,劳动强度大,而且容易出错,随着读者和书籍的日益增多,对图书的管理要求也日益提高,因此实现图书的信息化管理势在必行。
新系统的使用能否可以很好的解决这些问题要看系统的可行性,可行性研究的目的是用最小的代价在尽可能短的时间内确定问题是否能够解决。
编写目的:
从现有的技术和图书馆需求等方面研究改图书管理系统的可行性,为上层决策提供依据。
2.可行性分析的前提
2.1系统要求
学生用户端需要包含学生用户借阅图书、预约图书、丢失图书和罚款记录的基本信息,管理员端则需要对这些信息进行管理,如借阅的管理、学生用户的管理及图书的管理等,另外要实现图书的查询功能,使用户可方便地找到想要的书籍。
2.1系统目标
图书管理系统的目标是实现图书馆的管理信息化,提高借阅工作的管理效率,更好地维护图书的信息,为广大学生用户借阅图书带来方便。
3.对图书馆支出与收益的分析
该图书馆的管理比较松散,大部分工作都需要手工操作,对诸多信息的维护不仅费用高、工作量大,而且信息的安全性和数据的完整性很难得到保障。
如今开发了图书管理系统后,可缩减人力投入,大部分工作实现了自动化,降低了数据被无意破话的风险。
4.技术可行性分析
该系统采用jsp+Spring+Tomcat+Oracle数据库来完成,这是最流行的也是最具实力的技术,优点有:
处理速度快、准确通过权限的设置,数据的安全性好、方便查询、借阅管理等。
5.运行可行性分析
本系统作为一个小型的图书馆信息管理系统,所耗费的资源非常的小。
6.社会因素可行性分析
可降低员工工作强度,提高效率,会得到学校工作人员的一致同意的。
7.结论
综上所述通过可行性分析认为此系统结构清晰、功能合理、利润与开发成本比值高,因此开发方案切实可行,可进行开发。
第三章系统技术说明
3.1图书管理系统技术简述
本系统是利用javaweb研究开发的,运用JSP、JAVABEAN、Servlet、Spring、Oracle来实现的,技术运用主要分为三部分:
1、JSP经典设计模式(JSP+JAVABEAN模式)开发
2、Spring框架的简介
3、数据库的应用体现主要业务流程
3.2JSP的基本概述
JavaServerPage(简称JSP)是由SunMicrosystems公司于1999年6月推出的一种基于JavaServlet的web开发技术。
它依靠Java技术的稳定、安全、可移植等优点,得到广泛应用。
随着JSP技术的发展,基于JSP的开发模式经历了1、JSP开发模式;
2、(MVC模式);
3、基于JSP框架开发模式的阶段。
JSP它具体是在传统的网页HTML文件(*.htm,*.html)中加入Java程序片段(Scriptlet)和JSP标签,就构成了JSP网页。
其中java程序片段可以操纵数据库、重新定向网页以及发送E-mail等。
它的工作流程是让实现和建立动态网站的所有程序操作都在服务器端执行,而在网络上传送给客户端的仅是得到的结果,这样就大大降低了对客户浏览器的要求,所以即使客户浏览器端不支持Java,也可以访问JSP网页。
3.4JSP的优势
1、一次编写,到处运行。
除了系统之外,代码不用做任何更改。
2、系统的多平台支持。
基本上可以在所有平台上的任意环境中开发,在任意环境中进行系统部署,在任意环境中扩展。
相比ASP的局限性JSP的优势是显而易见的。
3、强大的可伸缩性。
从一个小的Jar文件就可以运行Servlet/JSP,到由多台服务器进行集群和负载均衡,再到多台Application进行事务处理,消息处理。
从一台服务器到无数台服务器,Java显示了巨大的生命力。
4、多样化和功能强大的开发工具支持。
这一点与ASP很像,Java已经有了许多非常优秀的开发工具,而且许多可以免费得到,并且其中很多工具已经可以运行于多种平台之下。
5、支持服务器端组件。
web应用需要强大的服务器端组件来支持,开发人员需要利用其他工具设计实现复杂功能的组件供web页面的调用,以增强系统性能。
JSP就可以使用成熟的JAVABEANS组件来实现复杂商务功能。
3.5JAVABEAN设计模型
3.5.1javabean的简介
Sun公司对JavaBean的定义是:
“JavaBean是一个可重复使用的软件部分”。
JavaBean是描述Java的软件组件模型,是Java程序的一种组件结构,也是Java类的一种。
JavaBean提供给外部操作接口,而实现过程无须外部知道,在java开发模型中,通过JavaBean可无限扩充Java程序的功能。
通过JavaBean的组合可以快速地生成新的应用程序。
3.5.2javabean的优点
1.提高代码的可复用性:
对于通用的事务处理逻辑,数据库操作等都可以封装在JavaBean中,通过调用JavaBean的属性和方法可快速进行程序设计。
2.程序易于开发维护:
实现逻辑的封装,使事务处理和显示互不干扰。
3.支持分布式运用:
多用JavaBean,尽量减少java代码和html的混编。
3.6SERVLET类
3.6.1servlet的概述
servlet是在服务器上运行的小程序。
这个词是在Java
applet的环境中创造的,Javaapplet是一种作为单独文件跟网页一起发送的小程序。
服务器上用一些程序,是根据用户输入访问数据库的程序。
这些通常是使用公共网关接口CGI(CommonGatewayInterface)应用程序完成的。
然而在通信量大的服务器上,Javaservlet的优点在于它们的执行速度更快于CGI程序。
各种用户请求被激活成单个程序中的一个线程,并且不需要特地创建单独的进程,这便意味着服务器端用来处理请求的系统开销将明显降低。
3.6.2servlet的实现
最早支持Servlet技术的是JavaSoft的JavaWebServer。
此后,一些其它的基于Java的WebServer开始支持标准的ServletAPI。
Servlet需导入特定的属于JavaServletAPI的包。
因为对象字节码,可以动态地从网络加载,所以Servlet对Server就如同Applet对Client一样。
但由于Servlet运行于Server中,因此它们并不需要图形用户界面。
从这个角度讲,Servlet也被称为FacelessObject。
Servlet的主要功能在于交互式地浏览和修改数据,生成动态Web内容。
这个过程为:
●客户端发送请求至服务器端;
●服务器将请求信息发送至Servlet
●Servlet生成响应内容并将其传给服务器(响应内容动态生成,通常取决于客户端的请求)。
●服务器将响应返回给客户端。
图3-2JSP和JavaBean模型
图2-3JSP和JavaBean+Servlet模型
3.7SPRING框架的简介
Spring框架是为了解决软件开发的复杂性而创建的。
Spring使用的是基本的JavaBean来完成以前只可能由EJB完成的事情。
然而,Spring的用途不仅仅限于服务器端的开发。
从简单性、可测试性和松耦合性的角度而言,绝大部分Java应用都可以从Spring中受益。
●目的:
解决企业应用开发的复杂性。
●功能:
使用基本的JavaBean代替EJB,并提供了更多的企业应用功能。
●范围:
任何Java应用。
Spring是轻量级控制反转(IoC)和面向切面(AOP)的容器框架。
3.8软/硬件平台
3.8.1软件平台
本系统开发所需最低软件配置要求:
操作系统:
WindowXP/Windows2000/Windows2003/Windows7。
显示分辨率:
1024X768像素。
3.8.2硬件平台
本系统的使用的最低硬件配置要求:
客户端:
CPU:
Pentium41.8GHz、内存512MB以上。
3.9ORACLE数据库
ORACLE数据库系统是美国ORACLE公司(甲骨文)提供的以分布式数据库为核心的一组软件产品,是目前最流行的客户/服务器(CLIENT/SERVER)或B/S体系结构的数据库之一。
比如SilverStream就是基于数据库的一种中间件。
ORACLE数据库是目前世界上使用最为广泛的数据库管理系统,作为一个通用的数据库系统,它具有完整的数据管理功能;
作为一个关系数据库,它是一个完备关系的产品;
作为分布式数据库它实现了分布式处理功能。
但它的所有知识,只要在一种机型上学习了ORACLE知识,便能在各种类型的机器上使用它。
Oracle数据库最新版本为OracleDatabase12c。
Oracle数据库12c
引入了一个新的多承租方架构,使用该架构可轻松部署和管理数据库云。
此外,一些创新特性可最大限度地提高资源使用率和灵活性,如OracleMultitenant可快速整合多个数据库,而AutomaticDataOptimization和HeatMap能以更高的密度压缩数据和对数据分层。
这些独一无二的技术进步再加上在可用性、安全性和大数据支持方面的主要增强,使得Oracle数据库12c
成为私有云和公有云部署的理想平台。
第四章系统设计
4.1系统设计概述
该系统主要分为两部分:
读者部分和管理员部分。
为了方便读者查找自己感兴趣的主题进行阅读,因此将图书按照内容进行分类。
这样读者就可以按照类别进行查找,逐级浏览、可以查看自己的信息。
本系统还可对用户的账号和书目的阅读权限进行管理。
管理员需要给用户分配用户名和密码,及设定用户的级别,还为用户提供图书的排行榜让用户能知道哪些图书受到大家的欢迎,最后就可以确定系统的最终目标及初步的结构功能。
4.2系统目标
图书管理系统的开发要实现的目标有以下几个方面:
1、实现需求分析阶段客户提出的功能。
2、数据存储安全、可靠。
3、信息分类清晰、准确。
4、强大的查询功能,保证数据查询的灵活性,便于在客户端查看预约通知。
5、实现对图书借阅和归还过程的全程数据信息跟踪。
6、提供图书借阅排行榜,为图书管理员提供了真实的数据信息。
7、提供灵活、方便的权限设置功能,使整个系统的管理分工明确。
8、界面导航明确,具有易维护性和易操作性。
4.3系统功能结构
根据图书管理系统的实际需求,可以将图书管理系统划分为学生用户端和管理端两大部分。
将其在进行如下划分:
1、学生用户端:
学生用户登录、修改密码、查询借阅信息、查询账单信息、图书检索、预约和挂失图书。
2、管理员端:
管理员登录、修改密码、管理员管理、图书管理、学生用户管理、借阅管理、罚款管理。
根据分析可得系统结构如图4-1所示。
图4-1系统结构图
4.4开发环境构建简介
1、开发工具简述
开发工具是:
MyEclipse9。
开发工具包:
JDKVersion1.6、commons-logging-api.jar、ojdbc5.jar、spring.jar。
JSP服务器:
Tomcat7.0。
浏览器:
推荐使用IE6.0以上的版本。
使用数据库:
Oracle10G。
2、开发环境构建
JDK1.6及其以上版本:
1.6版本是目前最稳定的版本。
数据库:
Oracle10G数据库,Oracle数据库系统是最早商品化的关系型数据库系统,是目前应用最广泛、功能强大、可用性很高的数据库。
Web服务器:
Tomcat7.0及其以上版本,其功能强大、方便易用,适应于中小型系统的开发,且Tomcat可以从网上免费下载,从而可降低开发成本。
业务层:
Spring2.5版本,Spring是一个优秀的JavaEE开源框架,它提供的控制反转及面向方面的编程插件式架构降低了应用组件之间的依赖性。
4.5系统流程图
图书管理系统的流程是用户先输入自己的账号、密码进入系统如有一项不符合则不能进入系统,成功登录系统后系统将根据登陆的账号信息跟数据库中的数据进行对比判断是读者还是管理员,如果是读者则能进行信息查询,及修改自己的相关信息,查询到自己所需要的图书就能通过管理员进行借阅图书、归还图书也是通过管理员完成的。
如果不是读者而是管理员,那管理员可以进行相关信息的查询、修改、添加、删除图书及读者的所有信息、设置相应的权限、为图书更新排行榜的信息、以及完成读者的图书借阅与归还。
系统流程图如图4-2所示。
图4-2系统流程图
第五章数据库设计
5.1数据库分析
在项目开发之前,要做的就是数据库的分析和设计,充分考虑到要实现的功能,这对于前期开发和后期维护有很重要的作用。
本项目采用的是Oracle数据库,Oracle数据库系统在全球数据库市场的占有率超过三分之一,在各个行业有着广泛的应用,因此本项目将采用Oracle作为后台数据库。
5.2项目E-R图
该系统包含的实体主要有:
图书、学生用户、管理员等,下面将图书实体的E-R图。
通过其E-R图来了解实体的属性
●学生用户E-R图,如图5-1所示。
●图书E-R图,如图5-2所示。
●管理员E-R图,如图5-3所示。
●各个实体间简单关系,如图5-4所示。
图5-1学生用户E-R图
图5-2图书E-R图
图5-3管理员E-R图
图5-4实体间简单关系图
5.3数据库表的设计
本系统共有6张表:
学生用户基本信息表、管理员信息表、图书信息表、借阅关系表、罚款记录表、预约信息表,下面就是对各个表的详细设计。
1、学生用户基本信息表:
用于记录学生用户用户的基本信息,其主要字段为学生用户学号、密码、姓名等,具体设计如表5-1所示。
表5-1学生用户基本信息表(student)
字段名称
数据类型
字段大小
是否主键
是否为空
说明
StudentNo
Varchar
20
是
否
学号
Password
varchar
密码
Name
姓名
Age
number
2
年龄
Gender
性别
Class
50
班级
Department
系别
Permitted
1
借书权限
建立该表SQL语句如下:
Createtablestudent(studentNOvarchar(20)primarykey,Passwordvarchar(20)notnull,Namevarchar(20)notnull,Agenumber
(2),Gendervarchar
(2),Classvarchar(50),Departmentvarchar(50),Permittednumber
(1));
2、管理员基本信息表:
用于记录管理员的用户ID、密码及级别,详细情况如表5-2所示。
表5-2管理员基本信息表(manager)
数据类型
字段大小
是否主键
是否为空
ManageID
登录名
ManagePwd
登录密码
ManageLevel
管理员级别
建立该表的SQL语句如下:
Createtablemanage(ManageIDvarchar(20),ManagePwdvarchar(20)notnull,ManageLevelnumber
(1)default0,primarykey(ManageID));
3、图书信息表:
用于记录图书的基本信息,其具体实现如表5-3所示。
表5-3图书基本信息表(book)
BookNO
10
图书编号
BookName
图书名称
Author
图书作者
Publish
图书出社
BookIsbn
图书ISBN号
BuyTime
进馆时间
BookPrice
5
图书价格
BookStatus
图书状态
Createtablebook(BookNovarchar(10)primarykey,BookNamevarchar(50),Authorvarchar(50),Publishvarchar(50),BookIsbnvarchar(20),BuyTimevarchar(50),BookPricenumber(5,2),BookStatusnumberdefault0);
4、借阅关系表:
用来记录学生用户用户借阅图书的基本信息,包括学号、书号、借阅的开始时间和结束时间等信息,其个字段的详细信息如表5-4所示
表5-4借阅信息表(borrow_list)
BorrowNO
N/A
借阅记录主键
学生用户学号
BookNo
借阅书号
StartTime
借阅开始时间
End
借阅结束时间
XuJie
是否续借
Deal
借阅记录状态
Createtableborrow_list(BorrowNOnumber,StudentNOvarchar(20),BookNOvarchar(10),StartTimevarchar(20)notnull,Endvarchar(20)notnull,XuJienumber
(1)default0,Dealnumber
(1)default0,primarykey(BorrowNO),Foreignkey(StudentNO)referencesstudent(StudentNO)ondeletecascade,Foreignkey(BookNO)referencesbook(BookNO)ondeletecascade);
5、罚款记录表:
用来记录学生用户罚款的信息,包括学生用户学号和罚款金额等信息,具体设计如表5-5所示。
表5-5罚款信息表(amercement)
AmerceNO
N