随着社会的发展,计算机的优势和普及使得阿博图书馆管理系统的开发成为必需。阿博图书馆管理系统主要是借助计算机,通过对图书借阅等信息进行管理。减少管理员的工作,同时也方便广大用户对所需图书借阅信息的及时查询以及管理。阿博图书馆管理系统的开发过程中,采用B/S架构,主要使用Java技术进行开发,结合最新流行的springboot框架。使用Mysql数据库和Eclipse开发环境。该阿博图书馆管理系统包括用户和管理员。其主要功能包括管理员:首页、个人中心、用户管理、图书分类管理、图书信息管理、图书借阅管理、图书归还管理、缴纳罚金管理、留言板管理、系统管理,用户:首页、个人中心、图书借阅管理、图书归还管理、缴纳罚金管理、我的收藏管理,前台首页;首页、图书信息、公告信息、留言反馈、个人中心、后台管理等功能。本论文对阿博图书馆管理系统的发展背景进行详细的介绍,并且对系统开发技术进行介绍,然后对系统进行需求分析,对阿博图书馆管理系统业务流程、系统结构以及数据都进行详细说明。用户可根据关键字进行查找自己想要的信息等。关键词:阿博图书馆管理系统,Mysql数据库,Java技术springboot框架
Keywords:ABOlibrarymanagementsystem,MySQLdatabase,Javatechnology,springbootframework
目录
摘要I
目录III
第1章概述1
1.1研究背景1
1.2研究现状1
1.3研究内容2
第二章开发技术介绍2
2.1系统开发平台2
2.2.1B/S结构3
2.2.2java技术4
2.2.3springboot框架4
2.2.4MySQL数据库4
2.2.5Vue.js简介4
第三章系统分析5
3.1可行性分析6
3.1.1技术可行性7
3.1.2经济可行性8
3.1.3操作可行性8
3.2系统性能分析9
3.3系统功能需求分析10
第四章系统设计11
4.1系统的功能结构图11
4.2数据库概念结构设计12
4.2.1数据库E-R图13
4.2.2数据库逻辑结构设计13
第五章系统功能实现14
5.1管理员功能模块16
5.2用户功能模块17
5.3前台首页功能模块17
第六章系统测试20
6.1测试内容与结果20
6.2测试结论21
总结23
致谢24
参考文献25
1.1研究背景
近年来,随着网络技术的不断发展,越来越多人喜欢在网络上查找各种自己所需信息。阿博图书馆管理系统对用户和管理员都有很大帮助,阿博图书馆管理系统通过和数据库管理系软件协作来实现用户与管理员之间的一个很好的操作平台,基于这一点,设计了一个阿博图书馆管理系统。
随着计算机的不断发展,已经融入到我们生活工作的每一个领域中,给我们的生活工作带来了很多的便利,因此,希望可以通过该系统的开发也能使阿博图书馆管理系统实现信息化管理,减轻人的负担,提高工作效率。
1.2研究现状
与其他国家相比,我国的软件产业相对落后,在信息化建设方面起步也比较晚,但是随着我国经济的不断发展,以及网络技术的不断提高,我国也在不断的进行软件行业的摸索,也得到了一些成果,我国的软件产业得到了快速的发展,越来越多的软件系统出现在人们的视线中,也逐渐改变着人们生活工作的方式。但是,对于信息化的建设,与很多发达国家相比,由于信息化程度的落后以及经费的不足,我国的阿博图书馆管理系统开发方面还是相对落后的,因此,要不断的努力探索,争取开发出一个实用的阿博图书馆管理系统,来实现阿博图书馆管理系统的信息化。因此本课题以图书信息为例,目的是开发一个实用的阿博图书馆管理系统。
阿博图书馆管理系统的开发运用java技术,以及MYSQL数据库、springboot框架等技术的支持下共同完成了该网站系统的开发,使用户可以有一个非常好的平台体验,管理员也可以通过该系统进行更加方便的管理操作,实现了之前指定好的计划。
1.3研究内容
通过对管理员和用户的需求分析,我们将该阿博图书馆管理系统的功能逐步进行了添加,然后进行功能分析和检测,而且针对这两方面进行了深入研究探讨,该阿博图书馆管理系统主要对开发背景、市场需求、数据库分析、功能模块以及开发技术进行了着重介绍和分析。最后对系统中的功能信息进行测试和分析。本次毕业实现的阿博图书馆管理系统,不管是可行性分析、系统整体框架设计还是编码,都需要严格遵守软件开发的三个周期八个阶段,在该系统的开发过程中,要保证系统具有良好的时效性、易安装性以及稳定性。在代码编写时一定要按照要求进行,让代码编写看起来更美观,开发出一个便于用户的使用的阿博图书馆管理系统是本次开发的主要目标。在系统完成之后,利用电脑来将系统进行安置,并且用户可以通过电脑随时进行查看图书信息、图书借阅、图书归还等信息。此次在阿博图书馆管理系统的开发中,对系统要进行可行性分析、系统需求分析等基本分析,并且完成系统的部署和测试,在这些功能都实现之后,通过电脑进行操作系统。系统规划分析中,需要按照以下所示的技术路线。
此次B/S结构、Java技术以及mysql数据库是该阿博图书馆管理系统的主要开发技术,然后对系统的整体设计、数据库设计、功能模块设计、系统页面设计以及系统程序设计进行了详细的研究与规划。
2.1系统开发平台
在该阿博图书馆管理系统中,Eclipse技术可以给用户带来极大方便,其主要特点就是可以使用户学习起来方便、快捷,另一方面就是信息储存量也是非常大的,该功能主要被应用为数据库中进行查询和编程。并且该功能的数据应用比较灵活,通过我们现在的发展可以得知,只要利用一小部分代码就可以来实现非常强大的功能。因此,该系统数据库开发主要是由Eclipse技术进行系统代码管理。
2.2.1B/S结构
B/S模式也就是浏览器/服务器模式,它的界面部分是在浏览器端展示,而主要工作是由服务器端进行实现的,用户的请求由浏览器端提交给服务器端进行处理,而服务器将处理结果反馈给浏览器端,在浏览器端界面描画给用户查看。采用B/S模式不仅可以避免用户必须安装毕节教育扶贫网站软件才能开发系统或者访问系统的局限性,而且更加便利[12]。
2.2.2java技术
java技术具有诸多优点,可以忽略所使用的平台,实现仅需一次编写就能够到处运行使用,而且还具有很好的安全性和多平台支持的特性,能够在任何平台的任何环境中进行开发,进行系统部署和环境扩展。它也有属于自己的功能强大的开发工具的支持,并且可以通过很多渠道免费得到,这就为java技术的传播也准备了条件[6]。
2.2.3SpringBoot框架
SpringBoot是Pivotal团队的一个新框架,旨在简化新Spring应用程序的初始设置和开发。该框架使用特定的配置方法,无需开发人员定义样板配置。通过这种方式,SpringBoot旨在成为蓬勃发展的快速应用程序开发领域的领导者。
SpringBoot特点:
1、创建一个单独的Spring应用程序;
2、嵌入式Tomcat,无需部署WAR文件;
3、简化Maven配置;
4、自动配置Spring;
5、提供生产就绪功能,如指标,健康检查和外部配置;
6、绝对没有代码生成和XML的配置要求;
安装步骤:
最基本的是,SpringBoot是一个可以被任何项目的构建系统使用的库集合。为简单起见,该框架还提供了一个命令行界面,可用于运行和测试Boot应用程序。可以从Spring存储库手动下载和安装框架的已发布版本,包括集成的CLI(命令行界面)。更简单的方法是使用GroovyenVironmentManager(GVM),它负责处理Boot版本的安装和管理。可以从GVM命令行GVMinstallspringboot安装Boot及其CLI。在OSX上安装Boot时可以使用Homebrew包管理器。要完成安装,首先使用brewtappivotal/tap切换到pivotal存储库,然后执行brewinstallspringboot命令。
2.2.4MySQL数据库
MySQL是目前中小型企业进行软件系统开发时广泛使用的传统关系数据库之一,特别是近年来在Oracle公司的管理下,MySQL数据库的性能有了很大的提升,而且支持的功能也更加丰富。MySQL作为最早的开源关系数据库之一,最初是由瑞典的数据库公司MySQLAB进行开发维护的,现归甲骨文公司管理。MySQL作为最为流行的开源关系数据库,是Web应用开发者进行Web应用开发时的首选数据库。MySQL数据库虽然是开发数据库产品,但是在广发MySQL使用者的共同维护下,MySQL本身的性能并不差。MySQL作为传统的关系数据库,与其它传统的关系数据库并无大的差别,在MySQL数据库中,数据根据数据库使用者的定义被存储于不同的数据库表中,而且用户可以定于不同的数据库来存放不同的数据表,这和目前新兴的非关系数据库数据存储方式有着很大的不同。MySQL数据库中数据的分表分库存储方式能够最大程度的避免数据同步代码的性能损耗,使得数据库的存取速度有了很大提升,而且同时保持了很大的灵活性。因此目前的中小型软件系统大多采用MySQL数据库进行系统数据的存储。
2.2.5Vue.js简介
Vue.js可以说是MVVM架构的最佳实践,是一个JavaScriptMVVM库,是一套构建用户界面的渐进式框架。专注于MVVM中的ViewModel,不仅做到了数据双向绑定,
而且也是一款相对比较轻量级的JS库,API简洁因为vue的双向数据绑定特性以及技术的成形,实现了项目的热加载,改完页面代码能立即在浏览器方面显示效果,提高开发效率Vue.js是采用Object.defineProperty的getter和setter,并结合观察者模式来实现数据绑定的。当把一个普通Javascript对象传给Vue实例来作为它的data选项时,
Vue将遍历它的属性,用Object.defineProperty将它们转为gettertter。用户看不到gettertter,但是在内部它们让Vue追踪依赖,在属性被访问和修改时通知变化。
通过对系统功能模块分析可以得知,主要是对项目元素组合、分解和更换做出相应的单元,再通过系统模块来规划出一个原则,系统的设计首先是围绕用户需求进行开发设计的,主要是为了能够更好的管理信息和方便用户,其次就是围绕阿博图书馆管理系统进行设计,最终的设计必须要满足用户的需求,这样才能够实现系统的最大意义和价值,并且在设计的时候一定要避免代码相互重复的情况发生。
3.1可行性分析
可行性分析是每开发一个项目必不可少的一部分,可行性分析可以直接影响一个系统的存活问题,针对开发意义进行分析,还有就是是否可以通过所开发的系统来弥补传统手工统计模式的不足,是否能够更好的解决阿博图书馆管理系统存在的问题等,通过对该阿博图书馆管理系统的开发设计,不仅能够逐步减少工作人员的工作量,而且还可以进行高效工作和管理。所以该系统的开发实现了最大的意义和价值,在系统完成后,利益是否大过于成本,是否能够达到预期效果,这些方面都要进行可行性分析,再通过分析之后,就可以决定是否开发此系统。该阿博图书馆管理系统的开发设计中,以下几点进行了可行性分析:技术可行性:通过Java技术的采用,由于该技术不断成熟,所以使用该技术设计阿博图书馆管理系统是具有可行性的。经济可行性:在开发过程中,系统完成后的利益是否大过于开发成本。操作可行性:阿博图书馆管理系统的开发设计中,方便用户的可操作性和实用性。
3.1.1技术可行性
(1)轻量级系统,使用灵活:阿博图书馆管理系统,设计时,考虑到不同使用者的习惯,让系统比较轻量级,便于安装,也完成了系统所具备的所有功能,在以上基础上,通过系统测试与优化,让操作更加灵活。
(2)系统开发0成本:该阿博图书馆管理系统,以开源的Windows7操作系统为基础,采用Java技术编码开发,并使用MySQL轻量级数据库,没有多余的开发成本。
(3)覆盖范围:任何城市,都能安装使用本次设计的阿博图书馆管理系统,对系统使用方没有严格的规定,平台搭建好了就能使用。
3.1.2经济可行性
3.1.3操作可行性
3.2系统性能分析
1.系统功能完整性:根据系统每一个功能模块,都能够设计出当初的算法和代码,用户信息主要是以文字和表格的模式进行介绍。
2.系统运行分析:系统中的每一个功能都要有相应的代码和编写数据的关系。系统的物理的数据主要是通过需求分析和可行性分析进行分析和显示的。
3.界面设计:系统中的软件都是由不同的代码来进行处理和分析的,并且保证了系统界面的易操作性能。
3.3系统功能需求分析
任务需求分析是每个系统开发设计必不可少的一部分,系统质量的好坏可以直接影响系统的存活问题,所以我们必须要将任务需求分析做到位,阿博图书馆管理系统的设计在初期的分析是尤为重要的,通过任务分析可以更顺利的进行系统设计,并且保证了用户的满意度。
(1)用户功能需求
用户进入系统可以查看首页、个人中心、图书借阅管理、图书归还管理、缴纳罚金管理、我的收藏管理等操作。用户用例图如图3-1所示。
图3-1用户用例图
(2)管理员功能需求
管理员登陆后,主要功能模块包括首页、个人中心、用户管理、图书分类管理、图书信息管理、图书借阅管理、图书归还管理、缴纳罚金管理、留言板管理、系统管理等功能。管理员用例图如图3-2所示。
图3-2管理员用例图
4.1系统的功能结构图
过系统需求分析,该阿博图书馆管理系统功能结构图如图4-1所示:
图4-1系统功能结构图
4.2数据库概念结构设计
4.2.1数据库E-R图
概念设计主要是通过数据库的概念结构和模式进行建立数据库嗯逻辑结构,然后利用数据库的DBMS进行完成,它不需要计算机系统的支持。通过系统的整体来看,主要是对数据库进行管理、整理、更新等操作。数据库的功能是非常强大的,每个系统的开发肯定离不开数据库,通过数据库可以看得出整个系统的质量和效率,根据以上的系统分析,对系统中的主要实体进行规划。以下是几个关键实体的实体关系图:
(1)用户管理实体E-R图如图4-2所示:
图4-2用户管理实体属性图
(2)图书信息管理实体E-R图如图4-3所示:
图4-3图书信息管理实体属性图
(3)缴纳罚金管理实体E-R图如图4-4所示:
图4-4缴纳罚金管理实体图
4.2.2数据库逻辑结构设计
表4-1:jiaonafajin表
列名数据类型长度约束idint11PRIMARYKEYaddtimevarchar200DEFAULTNULLjieyuedanhaovarchar200DEFAULTNULLtushubianhaovarchar200DEFAULTNULLtushumingchengvarchar200DEFAULTNULLfakuanshuomingvarchar200DEFAULTNULLfakuanjinevarchar200DEFAULTNULLfakuanriqivarchar200DEFAULTNULLyonghumingvarchar200DEFAULTNULLshoujivarchar200DEFAULTNULL
表4-2:tushuguihai表
列名数据类型长度约束idint11PRIMARYKEYaddtimevarchar200DEFAULTNULLjieyuedanhaovarchar200DEFAULTNULLtushubianhaovarchar200DEFAULTNULLtushumingchengvarchar200DEFAULTNULLtushufenleivarchar200DEFAULTNULLtupianvarchar200DEFAULTNULLkejietianshuvarchar200DEFAULTNULLjieyueriqivarchar200DEFAULTNULLyinghairiqivarchar200DEFAULTNULLguihairiqivarchar200DEFAULTNULLyonghumingvarchar200DEFAULTNULLshoujivarchar200DEFAULTNULLsfshvarchar200DEFAULTNULLshhfvarchar200DEFAULTNULL
表4-3:tushujieyue表
列名数据类型长度约束idint11PRIMARYKEYaddtimevarchar200DEFAULTNULLjieyuedanhaovarchar200DEFAULTNULLtushubianhaovarchar200DEFAULTNULLtushumingchengvarchar200DEFAULTNULLtushufenleivarchar200DEFAULTNULLtupianvarchar200DEFAULTNULLkejietianshuvarchar200DEFAULTNULLkejieshuliangvarchar200DEFAULTNULLjieyueriqivarchar200DEFAULTNULLjieyuetianshuvarchar200DEFAULTNULLyinghairiqivarchar200DEFAULTNULLjieyuezhuangtaivarchar200DEFAULTNULLyonghumingvarchar200DEFAULTNULLxingmingvarchar200DEFAULTNULLshoujivarchar200DEFAULTNULLshenfenzhengvarchar200DEFAULTNULLsfshvarchar200DEFAULTNULLshhfvarchar200DEFAULTNULL
表4-4:tushuxinxi表
列名数据类型长度约束idint11PRIMARYKEYaddtimevarchar200DEFAULTNULLtushubianhaovarchar200DEFAULTNULLtushumingchengvarchar200DEFAULTNULLtushufenleivarchar200DEFAULTNULLtupianvarchar200DEFAULTNULLzuozhevarchar200DEFAULTNULLchubanshevarchar200DEFAULTNULLtushuzhuangtaivarchar200DEFAULTNULLkejietianshuvarchar200DEFAULTNULLkejieshuliangvarchar200DEFAULTNULLtushujianjievarchar200DEFAULTNULL
表4-5:yonghu表
列名数据类型长度约束idint11PRIMARYKEYaddtimevarchar200DEFAULTNULLyonghumingvarchar200DEFAULTNULLmimavarchar200DEFAULTNULLxingmingvarchar200DEFAULTNULLxingbievarchar200DEFAULTNULLtouxiangvarchar200DEFAULTNULLshoujivarchar200DEFAULTNULLshenfenzhengvarchar200DEFAULTNULL
表4-6:tushufenlei表
列名数据类型长度约束idint11PRIMARYKEYaddtimevarchar200DEFAULTNULLtushufenleivarchar200DEFAULTNULL
5.1管理员功能模块
图5-2管理员功能界面图
用户管理,在用户管理列表可以查看用户名、姓名、性别、头像、手机、身份证等内容,还可以根据需要进行详情、修改或删除等操作,如图5-3所示。
图5-3用户管理界面图
图书分类管理,在图书分类管理列表可以查看图书分类等信息,并可根据需要进行详情、修改或删除等操作,如图5-4所示。
图5-4图书分类管理界面图
图5-5图书信息管理界面图
图书借阅管理,在图书借阅管理页面可以查看借阅单号、图书编号、图书名称、图书分类、图片、可借天数、可借数量、借阅日期、借阅天数、应还日期、借阅状态、用户名、姓名、手机、身份证、审核回复、审核状态、审核等内容,并且根据需要进行详情、修改等操作,如图5-6所示。
图5-6图书借阅管理界面图
缴纳罚金管理,在缴纳罚金管理页面可以查看借阅单号、图书编号、图书名称、罚款说明、罚款金额、罚款日期、用户名、手机、是否支付等内容,并且根据需要进行详情、修改或删除等操作,如图5-7所示。
图5-7缴纳罚金管理界面图
轮播图;该页面为轮播图管理界面。管理员可以在此页面进行首页轮播图的管理,通过新建操作可在轮播图中加入新的图片,还可以对以上传的图片进行修改操作,以及图片的删除操作,如图5-8所示。
图5-8轮播图管理界面图
5.2用户功能模块
图5-9用户功能界面图
图书归还管理,在图书归还管理列表中通过查看借阅单号、图书编号、图书名称、图书分类、图片、可借天数、借阅日期、应还日期、归还日期、用户名、手机、审核回复、审核状态等信息,并且根据需要进行详情、修改或删除等操作,如图5-10所示。
图5-10图书归还管理界面图
5.3前台首页功能模块
阿博图书馆管理系统,在阿博图书馆管理系统页面可以查看首页、图书信息、公告信息、留言反馈、个人中心、后台管理等内容,如图5-11所示。
图5-11前台首页界面图
图书信息,在图书信息页面可以查看图书编号、图书名称、图书分类、图片、作者、出版社、图书状态、可借天数、可借数量、点击次数等信息,进行借阅、点我收藏操作,如图5-13所示。
图5-13图书信息界面图
图5-14个人中心界面图
留言反馈,在留言反馈页面可以填写留言内容、回复内容、用户名等信息进行立即提交操作,如图5-15所示。
图5-15留言反馈界面图
通过一系列的测试,找出其中的错误。并且将测试作为软件开发的重要部分,在有了程序编程以后,测试就成为了系统中必不可少的一部分。通过统计分析,系统的软件测试占据了整个系统开发45%的工作量,从软件开发的成本中,测试成本已经包含了很多的测试工作。在测试中,每个程序都有可能出现错误。在该程序开发的过程中当中,利用人工方式去查找错误是比较繁琐和困难的,所以有必要找一些测试工具进行测试和分析。在系统整个程序的设计当中,出现一些错误的信息是时常发生的。对于这些指令当中语法是错误的,同时程序执行过程当中会提示,这样就方便找出错误。但是另一种类型的错误是由计算出来的,但是这些错误也是隐藏的,有时候它是不会发生的,所以解决这些错误是十分费时的。在进行系统运行的时候我们要对前期工作进行一个系统测试工作,通过测试来发现系统当中所存在的错误。当我们在测试过程当中要提早发现错误,并且发现错误以后要及时去改正,这样就能保证系统的长期运行。逐渐系统测试也就成为了一个系统设计必不可缺少的一部分。测试软件的时候要尽可能的去提高软件的鲁棒性。
6.1测试内容与结果
黑盒测试技术它主要把测试的数据进行划分成多个信息的数据进行程序测试,然后在根据不用区域的要求来进行输入测试信息,这样就有效的提高了测试效果,还可以减少测试次数,以下我们就用信息进行测试数据。
1、图书信息管理测试点
测试点:图书信息管理
测试目标:验证输入的信息是可用。
测试环境:Windows10操作系统和IE11浏览器。
输入数据:名称、介绍、图片等内容。
步骤:
(1)打开浏览器,进入图书信息管理。
(2)点击页面左方的添加按钮,出现添加页面,输入必要信息进行添加。
(3)主要进行图书信息管理的输入,输入情况见表6.1。
表6.1图书信息管理测试用例表
用例编号UC-TEST-001测试名称图书信息管理前提条件图书信息管理
测试结果成功测试人
测试的目标:输入账号密码以及验证码后系统会自动进行验证是否正确。
所用的环境:Windows10和IE浏览器。
输入信息:用户名、密码。
情况用户名输入密码输入期望结果(1)155462192251244566提示“用户名或者密码错误,或账号未经审核”(2)aaaaa123456提示“用户名或密码错误,或者账号未经审核”(3)15546219225hangguowei登陆成功
6.2测试结论
阿博图书馆管理系统的主要特点:稳定性高、功能强大、易于操作以及运行效果很好。本章主要是对系统的测试方法和测试环节进行了详细的介绍,每一环节的功能都是详细测试,主要目的就是为了避免环节测试中出现不必要错误。最后对各功能进行了测试,并且得出测试结果。
总结
通过本次设计,让我学到了更多的知识,而且在设计中会有一些问题出现,最后通过查阅资料和在老师和同学的帮助下完成了系统的设计和开发,使得这次系统的开发非常的有意义。同时通过这次系统的设计也让我明白了自己在哪方面有不足,以后加以学习争取可以开发住更多有用的适用的系统软件。
其次,我要感谢我的同学们,在遇到困难时,我们一起努力征服困难,所以我要真诚的感谢我的同学们。
[1]李璇.基于Java网络订餐平台的设计与实现[J].吉林:吉林大学,2019.
[2]黄瑞钰.图书在传统销售与互联网销售中的区别与转换[J].食品安全导刊,2019,9(27):101
[3]周雨薇,李玉红.“互联网+”模式下图书网络营销策略究[J].商场现代化,2019,9(12):36-37.
[4]陈实.“互联网+”背景下我国电子商务发展现状、问题和对策[D].武汉:华中师范大学,2019.
[5]王玉珂.图书交易领域电子商务模式O2O应用研究[D].武汉:华中师范大学,2018.
[6]王卉.基于java的阿博图书馆管理系统服务平台的设计与实现[D].南京:南京大学,2018.
[7]曹珍,杨帆.基于Java框架的商户管理平台设计与实现[J],2017,36(04):119-121.
[8]刘意凡.基于Java的阿博图书馆管理系统的设计与实现[D].北京:北京交通大学,2017.
[9]蒲冰.“互联网+”背景下图书线上销售平台发展思路[J].农业经济,2017,11(05):133-134.
[10].马赫著.DreamweaverMX2004网页设计经典108例.中国青年出版社.2018.
[11]付昕.基于B/S模式仓库管理系统的实现[J].山东省农业管理干部学院学报,2018,27(4):166-168
[12]黄艳峰.在Java语言中实施“案例共享办公系统”的研究与探索[J].电脑知识与技术,2019,6(5):1148-1149
[13]赵钢.Java的Web模式应用研究[J].电子设计工程,2018,21(13):47-49
[14]肖英.解决Java开发中的中文乱码问题[J].科技传播,2018,(1)11-25