基于微信小程序的图书馆管理系统设计与实现(论文+程序设计源码+数据库文件)
Posted weixin_40228600
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了基于微信小程序的图书馆管理系统设计与实现(论文+程序设计源码+数据库文件)相关的知识,希望对你有一定的参考价值。
摘 要 4
Abstract 6
1 前言 7
1.1 本设计的目的与意义 7
1.2 国内外发展概况 7
1.3本设计的主要内容 8
2 相关技术介绍及系统环境开发条件 9
2.1相关技术介绍 9
2.2系统环境开发条件 10
3 系统的需求分析与设计 11
3.1可行性分析 11
3.2需求分析 12
3.2.1系统总体概述 12
3.2.2功能性需求 13
3.2.3非功能性需求 14
3.2.4流程图设计 14
3.2.5系统ER图设计 16
3.3 数据库设计 16
3.3.1数据库设计的原则 16
3.3.2数据库表的设计 17
4系统功能模块实现 18
4.1 前端页面功能实现 19
4.1.1登陆页面的实现 19
4.1.2图书页面的实现 21
4.1.3座位页面的实现 21
4.2 后端页面功能实现 22
4.2.1登陆页面的实现 22
4.2.2用户管理页面的实现 24
4.2.3图书分类管理页面的实现 25
4.2.4图书管理页面的实现 26
4.2.5座位管理页面的实现 27
4.3日志功能模块 29
4.4安装部署 30
5 系统测试 31
5.1系统调试的目的和意义 31
5.2功能测试用例 32
6总结 33
参考文献: 34
致 谢 35
摘 要
在当今社会,互联网已经开始成为时代的主流,随着4G、5G等技术的蓬勃发展,人们的生活也越来越依赖网络技术。互联网移动服务也应运而生,它的出现快速的重新定义了人们获取信息和服务的方式,仅仅依靠手机就能跨越地区和日期,以最高效的方式帮助人们。与此同时图书馆作为移动服务技术主要的实践场所之一,也作为大学必不可少的存在,每天都有大量学生前来借阅图书以及进行自习,为了帮助学生和管理员提高效率,降低学生因为图书借阅和座位占座而产生矛盾,于是将互联网移动服务和图书馆相结合制作了基于微信小程序的图书馆管理系统。
微信小程序是当下最为普及、方便以及前沿的一种移动服务方式,微信小程序的开发运用了微信开发者工具,设计并开发图书馆管理小程序,并实现了图书借阅管理、留言管理、图书馆占座管理、预约占座等功能,帮助学生有效减少了挑选和借阅图书的时间,并且可对图书馆提供意见的即时反馈,当需要占用图书馆座而资源时,也更好的降低了座椅的资源浪费,以及节约了过早占座的时间。
关键词:微信小程序;高校图书馆;用户需求
The design and implementation of library management system based on WeChat program
Abstract
In today’s society, the Internet has begun to become the mainstream of the times, with the rapid development of 4G, 5G and other technologies, people’s lives are more and more dependent on network technology. Internet mobile services have also emerged, and their emergence has rapidly redefined the way people access information and services, relying on mobile phones alone to help people across regions and dates in the most efficient way. At the same time, as one of the main practical places of mobile service technology, library is also an indispensable existence of the university, every day a large number of students come to borrow books and self-study, in order to help students and administrators improve efficiency, reduce students because of book lending and seating and conflicts, so the Internet mobile services and libraries combined to produce a library management system based on WeChat small programs.
WeChat small program is the most popular, convenient and cutting-edge mobile service, WeChat small program development using WeChat developer tools, design and development of library management small program, and realize the book lending management, message management, library seat management, reservation seating and other functions, to help students effectively reduce the time to select and borrow books, and can provide immediate feedback on the library, when the need to occupy the library seat and resources, but also better reduce the waste of space, and save time on early seating…
Key words: WeChat mini-program;University libraries;User requirements
目 录
1 前言
1.1 本设计的目的与意义
在文艺复兴的洪流中,哲学家弗朗西斯·培根曾说道:“书籍是在时代的波涛中航行的思想之船,它小心翼翼地把珍贵的货物运送给一代又一代。”而图书馆则是智慧的舰队,运送着一代又一代智者的智慧结晶,穿越时间的洪流,将宝贵的货物馈赠给下一代人。早在公元3000年前,智慧的先辈就意识到了知识需要被传承的重要性,他们将自己对于生命的思考刻在胶泥板上,又由后辈小心翼翼的收藏在美索不达米亚平原的藏书之所中,于是世界的第一个图书馆出现了,它扛过了时间的打磨和战火的侵蚀,带着满满一身的故事向如今的我们描绘着那个来自远古的绮丽王国中的多彩往事。现如今每一座城市,每一所高校也都建起了大大小小的图书馆让智慧传承延续,而它们也将带着我们的所思所想启航,直达未来的彼岸。
随着互联网的不断发展,我国网民中使用手机上网的人数占总网民人数的 99.3% [1]。现代智能手机快速普及之后,人们交流、阅读的方式也逐渐发生改变,而在2011年1月21日微信横空出世,在短短几年内快速普及,彻底的改变了人们的生活、进入了千万家,似乎一夜之间,全国人民都开始使用微信交流,并且很快在六年后2017年1月9日,万众瞩目的第一批微信小程序也正式低调上线,也为将来轻型应用的普及迈出了第一步。微信小程序背靠微信这个巨大流量入口和 2019 年发布的资源扶持计划,到目前为止日活已突破 3.3 亿[2]。
在各地很多高校中,因为缺少专用的学生自习室,并且学生平日课业任务较多,在宿舍无法专心学习,所以很多学生都选择去图书馆自习,因此高校图书馆都面临着“人多座少”的尴尬的管理问题,也造成了很多学生占座内卷,为了可以占到座位甚至需要早上五点就在图书馆门口排起长队,而因为晚上无法好好休息,辛苦早起占到座位却反而在桌子上趴着睡觉。
而同时在图书的借阅上也产生了尴尬问题,因为无法看到图书馆内的书籍构成以及借阅情况,学生也常常面临着找不到书或者书被别人借走而白跑一趟的情况。浪费了学生的时间同时也让学生借书欲望下降,许多优秀书籍在馆内积灰却也无人知晓、借阅。
因此,设计一款帮助高校图书馆解决此类问题的基于微信小程序的便捷轻型应用是我本次的目的和重点。
1.2 国内外发展概况
微信小程序是无需下载安装就能使用的应用程序,它真正实现了用户只需扫一下或 者通过搜索就可以打开并且使用的工具[3]。
在国外微信和微信小程序的使用率并不高,使用者主要集中在东南亚地区以及境外华人,对于微信小程序此类轻型应用来说仍是一片蓝海。
在国内微信已经完全占据了主流市场份额。目前已经发布 iPhone 版、 android 版、Windows Phone 版、Blackberry 版、 S60V3 和 V5 版[4]。据调查显示,个体户和个人类型主体可注册5个微信小 程序,且微信小程序的开发费用较软件价格低,开发门槛 低,借助于可靠的微信数据后台,开发小程序所需的数据资 源安全高效,截至2019年年底,我国微信小程序数量已达 300万个,未来发展前景可观[5]。在本身微信已是全民应用的前提下,疫情也让各地健康码等微信小程序逐渐成为生活刚需。如今不论人们去哪里都需要进行微信扫码登记以及出示二维码,通过网络记录出行路线和接触人群,不但确保了安全而且也大大减少了寻找曾与确诊患者密切接触人群的难度。
现在许多应用都增加了相同功能的微信小程序版,如美团、饿了么等外卖软件或者滴滴此类打车软件,甚至连追星粉丝为明星打投的软件也开发了微信小程序版,因为微信小程序此类轻型应用不需要下载便可直接使用,帮日渐臃肿的手机从在现在各类五花八门的软件中解放出来。
在医疗中微信小程序也发挥了不可忽视的作用,现在许多医院都逐渐提高安全意识,宣传无接触挂号预约,通过扫描二维码进入当地医院的微信小程序,即可在家完成预约挂号和信息填写,既保证了安全、减少了医院的工作量也便利了患者,不需要再排长队或者到医院发现医生未上班而白跑一趟。
目前国内已有部分高校图书馆通过微信公 众平台,向广大的读者用户提供服务,如北 京大学图书馆、中国人民大学图书馆和上海师 范大学图书馆等[6]。在高校内除了图书馆管理之外,微信小程序也承担了重要的角色,学生平日查询课程表、考试日期、成绩查询等都依靠小程序进行,经过近两年的发展,国内已经构造了新的微信小程序开发环境和开发者生态。
1.3本设计的主要内容
本文设计了一个关于图书馆管理系统的微信小程序,主要目标为实现通过小程序进行图书馆书籍的查询和预约借阅、在公共留言板上学生可以对图书馆进行相关建议的留言、在网络上可以进行预约图书馆自习桌椅的预约以节省学生的无效抢座时间以及对已占座位显示占座,在一定时间内为学生预留用餐休息时间内的座位。
本文根据该软件的特性需求进行研究分析主要内容:首先介绍项目的开发的背景和研究的意义;二是介绍了对项目开发过程中所用到的相关技术的理论知识,及开发环境的介绍;三是对系统开发进行了必要的分析,为系统设计环节提供了相应的理论基础。四是实现系统开发的主要环节和前提条件,对项目系统的主要模块进行了详细的分析和设计,为后续的具体实现奠定基础。五是简要介绍了测试用例,让我们在顺利地完成程序的开发工作后,通过这些测试,快速有效地找出了系统存在的不足之处并及时对其进行改动和完善。
2 相关技术介绍及系统环境开发条件
2.1相关技术介绍
微信开发者工具是由腾讯官方专门为微信小程序量身打造的开发者工具,它不仅轻巧、方便,主要是的对于电脑要求不是很高,所以在一般的电脑上都可以完成相应的开发,在系统调试测试过程中,也不要下载第三方插件,就可以完成系统测试环节,通过制定好的debug调试器就可以完成。
该系统基于浏览器的方式进行访问,采用springboot集成快速开发框架,前端使用vue方式,基于es5的语法,开发工具IntelliJ IDEA 2020.1.1 x64,因为该开发工具,内嵌了Tomcat服务运行机制,可不用单独下载Tomcat server服务器。
Java作为面向对象的开发开言,它不仅吸收了很多语言的各种优点,而且它的整个生态在所有语言中开放性是最好的,在学习上,可以找到很多类似的功能代码,供以后参考学习,像目前asp.net开发语言在很大程度上都在模仿java的思维,如果学会java编程,在去掌握另一门语言,学起来就非常的快,因为它的简单性、面向结构性,减少了代码管理的复杂度,让编程过程更加的清晰、逻辑解耦性也更加分层化。
Maven作为了一款项目版本管理软件,可以更好管理jar包的使用,以前在没有出现Maven管理工具,需要在网上下载很多版本的jar包类,有时候版本间不兼容性,影响系统的使用发挥,有时会出现不同的bug出现,使用Mavern工程项目后,就可以很好的杜绝这一难度题。
mysql是开源的关系型数据库,因为是开源所以没有版权的纠纷,现在很多公司都在利用mysql作为数据库的存储,不仅它的存储速率比较快,而且还可以在它的基础上进行二次开发,定制出更适合公司的数据库。
Vue的语法底层实现了双向数据绑定的原理,在重新更细或发布项目时候,不需要额外的重启项目,代码功能模块的实现,就可以在浏览器上反映出来,实现快速响应,不像有些可编译的语言,需要加载很多的插件,才能启动。
Spring封装了很多的java类库文件,在开发过程中,不需要写太多复杂的类文件,只需要引用spring这个框架,就可以完成快速开发的需要,所以Java编程的逻辑代码就变得比较清晰,各层之间的解耦性也比较强,可重用性也得到了很好的发挥,使得开发难度也更加轻松容易,它的主要两个特性就是依赖注入、面向接口思想;(AOP)切面思想;
IntelliJ IDE与eclipse对比,这两款都是java编程语言开发工具,与之不同之处,IDEA与第三方插件市场接入更多,开发效率与智能提示方面比eclipse更智能,在环境配置生成上IDEA也比较快,界面设计也比较干净简单。
HBuilder 是基于html、js、css的等H5语法的开发技术,使得开发者很容易上手学习,里面涉及的数据绑定基于Vue语法涉及,在开发效率上也比传统的jquery快,当然HBuilder 也保留了对jquery的支持,两种语法可以结合项目的需要,可以混合开发。该开发工具本身是由java编写完成,所以对原生项目的插件也有很好的兼容性。
2.2系统环境开发条件
该系统采用B/S架构,前端框架使用微信开发者工具开发,后台数据实现使用MYSQL
序号 软件环境 版本 备注
1 windows操作系统 10
2 数据库MYSQL 8.0
3 编程开发工具软件IDEA 2020.2
4 微信开发者工具 1.05
3 系统的需求分析与设计
作为软件前期开发过程中,需要对项目进行需求分析,首先要了解业务具体做什么,实现什么样的功能,在功能模块中细分每个功能模块的使用背景,只有这样在软件开发中,才不会重复出现因为架构设计的缺陷,导致在次设计底层数据结构的发生,此外,有些非功能的特细,比如数据库性能、安全性的考虑、网速的反映时间都是作为需求分析的约束条件,也是项目开发完成后,在运行时需要分析的目标。
3.1可行性分析
在系统开发的过程中系统的可行性分析是必不可少的,可行性的研究就是评估问题是否能得到解决并且是要以最少的时间和最少的代价来解决。为实现上面的目标还要必须考虑到解决这些问题的方法的优点和缺点,还要考虑到实现了这些系统规模的开发带来的经济效益。这里可以用技术的可行性,操作的可行性,经济的可行性对我们的系统进行可行性的研究。
3.1.1技术性:本项目设计的系统主要采用layui前端开发,后端使用java语言以及springboot集成开发性框架,采用mysql数据库,根据自身所学专业,结合网上查阅案列及图书馆资料,开发实现是没有太大问题的。
3.1.2经济性:开发一套成熟的软件,都需要经过一段漫长的过程,这里设计到软件的需求分析、制定计划,开发人员、测试环节、调试过程,都需要资金及人力的投入。而这套软件的开发,可以通过网上开源源码及相关资料的学习,在硬件及电脑使用上,都是自己所用,所以在开发成本上可以忽略不计。
3.1.3操作性:本系统设计到的功能主要有登陆模块、学员管理模块、教师管理模块、课程管理模块、教室管理模块,这些功能模块的相关知识,都是平常所设计到的常用功能,在操作上都是可以实现的。
3.2需求分析
通过了解用户的需求,可以知道操作简单的系统更易受到用户青睐,同时能够准确、完整的对信息进行管理。小程序图书管理平台在对需求做相应的分析后,得出结论,系统主要分为两个角色:管理员和普通用户。
管理员模块主要进行数据的更新管理,功能分为用户管理、图书分类、图书管理、座位管理、留言信息等功能的管理
普通用户模块主要可以注册登陆系统、以及图书借阅功能、留言回复功能、座位查询等功能。
3.2.1系统总体概述
该项目管理系统主要基于B/S设计模式,系统设计的功能有:用户管理、图书分类、图书管理、座位管理、留言信息。其系统结构如图3-1所示:
如图3-1结构图
3.2.2功能性需求
本系统是利用现代化的计算机网络技术将传统信息宣传方式整合,按照实践过程设计完成的。同时完善服务,初步设计一个微信图书管理系统平台以利于相关的事务操作。为了使系统在各项管理中发挥更大的作用,实现计算机信息化高效的管理,现将开发目标功能需求介绍如下:
( 1) 管理员登录模块
管理员有权进行小程序图书系统的管理,但所有的注册以及权限的使用,都需经过管理员授权,管理员进入主页后可以对员工进行相关功能的授权,比如:图书借阅管理、留言回复管理、座位管理、用户管理。
( 2) 用户管理模块
对已经注册的用户进行管理操作。
( 3) 图书借阅管理模块
主要用来记录图书借阅的状态,管理员可以对图书进行上下架操作,及图书管理上的操作。
( 4) 座位管理模块
主要针对图书馆座位情况的查询,便于大学生提前做好图书馆座位的预定,管理员可对座位信息的相关添加、修改、删除操作
3.2.3非功能性需求
该系统不仅要满足功能性需求,还需要满足看不到的非功能性需求,比如系统的兼容性、用户界面整体性、网页访问的流畅性,主要归纳如下几点:
类别 需求描述
兼容性 支持多浏览器访问。
界面性 网站整体美观、元素搭配协调。
安全性 访问控制不受到攻击,防止sql注入。
3.2.4流程图设计
普通用户系统工作流程为:普通用户通过微信图书管理系统登陆系统后,可对图书借阅进行查询以及相关图书的订阅,在图书座位管理可以查询当前图书馆剩余座位的情况,还可以对小程序留言,提建议。以下是总体的流程图设计如图3-2:
图3-2总流程图设计
登陆管理流程图:登陆管理功能是系统的管理入口,当然也是系统防护级别最高层,如果没有好的安全防控机制,系统就会很容易遭受攻击;对此在设计时,主要会考虑以下几个方面。如下:1、验证用户名和密码是否在数据库表中存在记录;2检验用户名和密码输入是否合法,尤其是sql注入,防止入侵系统,篡改权限;3在用户登陆系统时,会为每一个用户提供一个seesionID,过期时间为30分钟,如果用户长期不使用系统,超出30分钟后,系统会自动跳转到登录页。以下是部分流程图设计,如下:
3.2.5系统ER图设计
3.3 数据库设计
3.3.1数据库设计的原则
在建表时,表的主键要尽量的少,在表与表之间建立外键关系时,也要尽量的少,尽量减少数据库查询和CRUD操作的复杂度;系统恢复性操作,在设计数据库文件中考虑到表如果出现损坏,在短时间内可以快速的恢复,减少成本的支出。在数据库系统开发过程中,一般都需要满足以下几个特点:字段冗余少,就是在设计表字段时,尽量减少不必要多余的字段出现,在设置表的参数类型时,合理控制参数字段长度;保密性和安全性要强,不要把系统关键字设置在表中,防止sql注入攻击;表与表之间的管理性要合理化,尽量减少三张以上的管理表查询,减少sql查询带来的系统性能的下降。
3.3.2数据库表的设计
用户表(user_name):用户编号、用户名称、、用户密码、姓名、电话、邮箱
4系统功能模块实现
以上是关于基于微信小程序的图书馆管理系统设计与实现(论文+程序设计源码+数据库文件)的主要内容,如果未能解决你的问题,请参考以下文章
2022基于微信小程序的图书馆管理系统设计与实现 .rar(毕业论文+程序设计源码+后端)
2022基于微信小程序的图书馆座位管理系统.rar(论文+程序设计源码+数据库)毕业设计
基于微信小程序的电影订票系统设计与实现(代码+数据库+论文)