摘 要
随着信息时代的来临,过去的“口腔助手”管理方式缺点逐渐暴露,现在对过去的“口腔助手”管理方式的缺点进行分析,采取计算机方式构建“口腔助手”小程序。本文通过阅读相关文献,研究国内外相关技术,提出了一种预约信息管理、“口腔助手”管理于一体的系统构建方案。
本文通过采用B/S架构,SpringBoot框架、MySQL数据库,结合国内“口腔助手”管理现状,开发了一个基于微信小程序的“口腔助手”小程序。系统分为:系统首页,个人中心,医生管理,用户管理,预约信息管理,口腔历史管理,用户反馈管理,在线问诊管理,保健知识管理,系统管理等功能模块。通过系统测试,本系统实现了系统设计目标,相对于人工管理方式,本系统有效的减少了“口腔助手”管理的经济投入,并且大幅度提升了“口腔助手”管理的效率。
关键词:“口腔助手”;SpringBoot框架;MySQL数据库
Abstract
With the coming of the information age, the shortcomings of the management mode of “oral assistant” in the past are gradually exposed. Now, the shortcomings of the management mode of “oral assistant” are analyzed, and the small program of “oral assistant” is constructed by computer. Through reading relevant literature and studying relevant technologies at home and abroad, this paper puts forward a system construction scheme of appointment information management and oral assistant management in one.
In this paper, by using B/S architecture, SpringBoot framework, MySQL database, combined with the current situation of domestic “oral assistant” management, a small program based on wechat “oral assistant” is developed. The system is divided into: system home page, personal center, doctor management, user management, appointment information management, oral history management, user feedback management, online consultation management, health knowledge management, system management and other functional modules. Through the system test, this system has achieved the system design objectives, compared with manual management, this system effectively reduces the economic input of “oral assistant” management, and greatly improves the efficiency of “oral assistant” management.
Keywords: “oral assistant”; SpringBoot framework; MySQL database
目 录
1 绪 论 5
1.1课题背景 5
1.2 课题目的及意义 5
1.3课题研究现状 5
1.4 论文主要工作内容 6
2 系统关键技术 7
2.1微信小程序 7
2.1.1微信小程序的介绍 7
2.1.2微信小程序框架概述 7
2.2 MySQL数据库 8
2.3 B/S结构 8
2.4 SpringBoot框架 9
3 系统分析 10
3.1 可行性分析 10
3.1.1 技术可行性 10
3.1.2 操作可行性 10
3.1.3 经济可行性 10
3.1.4 法律可行性 10
3.2 系统性能分析 11
3.2.1 系统安全性 11
3.2.2 数据完整性 11
3.3 系统功能分析 11
3.4 系统流程分析 14
3.4.1 数据开发流程 14
3.4.2 用户登录流程 14
3.4.3 系统操作流程 16
3.4.4 添加信息流程 16
3.4.5 修改信息流程 17
3.4.6 删除信息流程 18
4 系统设计 19
4.1 系统概要 19
4.2 系统结构设计 19
4.3 数据库设计 20
4.3.1 数据库设计原则 20
4.3.2 数据库实体 20
4.3.3 数据库表设计 23
4.4 系统时序图 28
4.4.1 注册时序图 28
4.4.2 登录时序图 29
4.4.3 管理员修改用户信息时序图 30
4.4.4 管理员管理系统信息时序图 30
5 系统的实现 32
5.1 基本任务 32
5.2小程序前台首页界面实现 32
5.3后台管理员模块实现 36
6 系统测试 39
6.1 测试环境 39
6.2 测试目的 39
6.3 测试概述 39
6.4 单元测试 41
6.4.1 注册测试 41
6.4.2 登录测试 41
6.5 集成测试 42
结 论 43
参考文献 44
致 谢 46
1 绪 论
1.1课题背景
“口腔助手”小程序主要通过计算机网络,对“口腔助手”小程序所需的信息进行统一管理,方便用户随时随地进行增添、修改、查询、删除各类信息。本系统极大的促进了系统与数据库管理系统软件之间的配合,满足了绝大部分用户的需求,给用户带来了很大的便利。以现在计算机的技术的应用,使计算机成为人们使用现代发达技术的桥梁。计算机可以有效的解决信息,十分方便的获取信息,从而提高工作的效率。
1.2 课题目的及意义
随着信息化管理技术不断发展,传统的“口腔助手”管理已经无法适应,效率与预期相差甚远,因此需要开发一套操作方便,效率较高的“口腔助手”小程序。当前,21新世纪,人们已经进入了信息时代,人们获取信息的方式大大增加,摆脱了传统的报纸、电视、广播等媒体,而是从各种网络、自媒体平台上获取信息,这就导致日常生活中产生的数据信息十分巨大,尤其是对于“口腔助手”管理,更需要大量的信息。本系统能为用户提供一个“口腔助手”小程序,就能够快速有效的帮助用户获得对方想要的信息,并且可以让管理员能够轻松效率地浏览所有的信息。系统开发的意义主要在于两个方面,一方面,系统上线后,能够为“口腔助手”管理带来很大便利,“口腔助手”管理涉及的数据量较大,要求精度高,采用计算机系统能够很好满足此需求,并且随着目前电脑、手机的普及,方便用户的使用。另一方面,通过自己动手操作设计系统,不仅可以提升自己的学习兴趣,也是在进入社会之前的一次很好的锻炼机会[6]。
1.3课题研究现状
其实,相关的研究在国外已经开展了很多年了,将“口腔助手”与信息技术相融合的理念在欧美等发达国家的“口腔助手”建设中很受欢迎 美国开放的Ravel平台,能够在手机上实现远程“口腔助手”信息管理等功能,并且可以实现可视化的详细的过程展示、在线测试、在线评价等,极大的丰富了线上“口腔助手”管理模式。2015年2月,国王学园正式提出了在线信息管理的制度设想[5],希望通过互联网技术保障实现信息管理。但现如今,也有许多国外学者提出,信息化时代带来的乱象越来越多,日益增长的在线管理平台让人应接不暇,需一场数字化的现代化的转型,建立可靠的“口腔助手”小程序,实现数字管理。
随着人流量不断的增加,越来越多的人们开始加入了“口腔助手”行业的大潮中,但是我国“口腔助手”小程序信息管理效果低下,而且出错率也很高。因此大家迫切需要一款更加专业化的“口腔助手”小程序[3]。
随着“口腔助手”小程序的不断出现,用户需求不断增多,“口腔助手”小程序也不断的得到壮大。该系统主要是满足多方面的需求的实际需要,方便用户利用互联网实现对“口腔助手”的了解、对比,同时让管理者可以通过这个系统对用户实际需求以及各“口腔助手”信息的所有了解进行操作。设计该系统主要目的是为了方便用户可以有一个非常好的“口腔助手”管理平台,管理员也可以通过该系统进行更加方便的管理操作[4]。
1.4 论文主要工作内容
本文设计并实现了一个“口腔助手”小程序,主要包括以下具体工作内容:
(1)参考国内外相关系统开展了系统的需求分析,明确了系统首页,个人中心,医生管理,用户管理,预约信息管理,口腔历史管理,用户反馈管理,在线问诊管理,保健知识管理,系统管理等主要功能需求。
(2)设计系统技术方案,采用JAVA语言,选用MySQL数据库、SpringBoot框架来设计并实现本系统。
(3)具体介绍了各个功能模块的设计与实现。
(4)对系统的系统首页,个人中心,医生管理,用户管理,预约信息管理,口腔历史管理,用户反馈管理,在线问诊管理,保健知识管理,系统管理等功能进行了全面的测试。
2 系统关键技术
2.1微信小程序
2.1.1微信小程序的介绍
微信小程序是由张小龙研发且于2017年1月9日正式推出的一种不用下载的就可以使用的轻量应用,而且用完之后也不需要卸载,实现了用完即走的原则,因此小程序的传播消耗和获取用户的成本在一定程度上被大大地降低了。这为用户与服务的连接开辟了一种新的方式。对于微信小程序更直接的理解,就是可以分解为微信和小程序,由此不难理解,即微信小程序的开发环境就是微信,因此在微信中用户可以通过线下二维码扫一扫或者扫公众号中关联的二维码打开小程序应用,或者用户还可以通过搜索小程序打开应用。微信小程序最重要也是最有优势的一点就是其占用的空间非常小,因此用户从获取小程序到进入该小程序消耗的时间很少,大大的提升了用户的使用体验。
2.1.2微信小程序框架概述
(1) 逻辑层
逻辑层就是微信小程序中所有.js文件的集合,在逻辑层小程序会给视图层发送处理好的数据,同时视图层将时间请求反馈回来给逻辑层。其中微信团队进行了一系列的优化,例如通过使用app的方法来作为小程序的入口,对页面还使用了page的方法来未作页面的入口。同时还陆陆续续的提供了许多多功能的API接口,这个对于开发者来说是非常便利的,同时微信团队还将页面的作用域进行独立化,这样使得页面具有了模块化的功能,可以管理小程序的生命周期,实现数据和事件的分发等功能。但是逻辑层中比较特殊的一点就是在逻辑层中的js代码并不是在浏览器中运行的,因此js在web中不具有dom、window等一部分能力,所以在平时的开发过程中我们要注意这些点。
(2) 视图层
.wxml文件和.wxss文件的集合就是组成了微信小程序的视图层,其中在.wxml文件中实现页面结构的搭建,包括元素组成、数据的显示、事件的绑定等。视图层的页面是通过bind绑定的,同时也支持冒泡事件的绑定,但这个还是有区别于HTML的on的。而.wxss文件则完成页面结构和数据的显示样式,而数据的显示又是以小程序的基本单位组件(component)来展示的,特别的是为了适配各式的设备屏幕,微信小程序还新增了一个尺寸单位rpx,通过使用这个单位来进行页面的布局,很好的实现各种设备不同屏幕下的页面的自适应显示,大大提高了开发者的工作效率。
数据层中可以缓存临时数据,本地存储,可以存储或者调用网络。首页数据层中通过setData()函数将数据传递给视图层以达到数据改变驱动页面的改变的目的,在 开发过程中切忌频繁使用setData(),否会出现页面卡顿或数据未更新的情况。同时微信小程序还为本地的存储提供了一些比较成熟的API接口,例如设置缓存数据的本地存储wx.setStorage,获取缓存数据的API接口wx.getStorage以及清除缓存数据的接口wx.clearStorage。而网络的存储和调用的实现也可以通过一些成熟的API来实现,例如上传文件接口wx.uploadFile,与其对应的下载文件接口wx.downloadFile和最常用的网络请求的接口wx.request。在平时的微信页面跳转中则是一些网络的调用,包括页面的跳转wx.navigateTo,该方法除了不能跳转至tabBar页面以外其他的都可以跳转,且还可以返回原来的页面。
2.2 MySQL数据库
数据库系统是一个进行数据存储的系统,数据库就是这个系统的库,用来存放通过系统的数据,数据库在开发人员的日常生活中,占据了很大的地位。因为使用数据可以使自己系统存储数据更加方便、快捷[14]。
MySQL之所以受到广大开发人员的欢迎,主要原因使因为数据库的使用是免费的。最开始的数据库研发出后,是需要收费的,但是随着MySQL的出现和不断更新,越来越多的用户去使用这款软件[15]。首先它是开源且免费的,这样大大减少了开发的成本;第二MySQL可以在多个平台上使用,在MAC、Windows和Linux上都可以使用。其次它的性能也是十分强大的,性价比极高。最后,MySQL相比其他数据库语言来说,更加简单易于上手;可以与很多平台搭建联系,比如本文使用的Java [16] 。
2.3 B/S结构
B/S架构,也就是浏览器/Server (Browser/Server),是在因特网技术发展过程中, C/S架构的一种改变和完善。采用该架构,可以充分利用 WWW的浏览器来完成用户接口,而在前端完成交易的部分业务,而服务端则完成了交易的基本功能。这就构成了3- tier的构造。B/S体系架构,采用了日益完善的 WWW技术,将各种 Script、 VBScript、 JavaScript、 ActiveX等技术相融合,通过一款普通的网络浏览器,既可以完成一些复杂的特定程序,又可以节省大量的资源,又可以节省大量的资源。由于视窗98/2000把浏览器技术移植到了操作系统中,所以这个架构现在已经是目前最受欢迎的应用程序架构了。
B/S架构,也就是浏览/伺服器(Browser/Server)架构,是指仅有一个伺服器(Server)被安装,而客户机则使用浏览(Browse)来执行该软件。这是因特网技术出现后, C/S架构的一种改变与完善。它充分运用日益完善的 WWW技术,并将各种 Script、 JavaScript、 ActiveX等 Script技术相融合,形成了一个崭新的体系结构技术。
2.4 SpringBoot框架
Spring Boot是由Pivotal的开发团队在2013年开发的一个免费、轻量级、开源的系统框架。SpringBoot的主要设计思想是约定大于配置,因此SpringBoot在设计时几乎达到零配置。SpringBoot集成了业界的开源框架。
SpringBoot是一个非常强大的后台框架,因为SpringBoot的开发基本上不需要写配置文件,所以利用SpringBoot来构建网站的后台环境,在SpringBoot的YML配置文件中写项目启动端口,项目就可以启动了。项目的Java和静态文件由SpringBoot管理。
3 系统分析
3.1 可行性分析
“口腔助手”小程序主要目标是实现网上的相关信息管理服务。在确定了目标后,我们从以下四方面对能否实现本系统目标进行可行性分析。
3.1.1 技术可行性
技术上的可操作性是项目建设顺利进行的一个关键因素,技术措施必须达到要求,方能使项目顺利进行。该方案使用了开放源码的代码,并使用Java等技术,对软件的设计具有适度的困难和对电脑的硬件需求。所有的语言都很容易使用。该项目具有技术上的可行性。
3.1.2 操作可行性
当今社会,电脑已经是耳熟能详的存在了,绝大部分用户都可以通过电脑轻松操作本系统。由此可知,我们的管理系统对于绝大部分用户来说,操作是完全可行的,并不存在操作上的盲区。
3.1.3 经济可行性
本系统所需要用到的所以的工具都是开源,不收费的,并且本系统因为不具有太过于复杂的结构,用户维护系统的费用也不高。所以,本系统的经济可行性是可行的。
3.1.4 法律可行性
此“口腔助手”小程序是自己设计的管理系统,具有很大的实际意义。因为无论是软件还是数据库,采用的都是开源代码,因此这个系统的开发和设计,并不存在侵权等问题,在法律上完全具有可行性。
综上所述,“口腔助手”小程序在技术、经济、操作和法律上都具有很高的可行性,开发此程序是可行的。
3.2 系统性能分析
3.2.1 系统安全性
“口腔助手”小程序必须由领导机构严格执行。具体要求如下:
(1)如果要使用“口腔助手”小程序,必须先注册才能进行登录。未获许可的使用者,不可以任意的方法,进入或浏览系统资讯及资料,因而本系统将会得到保护。
(2)在不同司法管辖区的具体实施。使用其他权限登录时,无法跳过此操作。
(3)如果专门应用,该系统将包含许多必须保密的数据和信息。该系统存在系统漏洞,发布此信息将给客户造成重大损失。因此,我们充分保证了该规则和系统的发展趋势。
3.2.2 数据完整性
(1)必须对所有的数据进行详尽的记载,而该信息的内容不得为空白。
(2)各种资料的关联一定要恰当。
(3)在不同的档案中,同一资料资讯应该互相相符。
3.3 系统功能分析
“口腔助手”小程序主要有管理员,医生和用户三个功能模块。以下将对这三个功能的作用进行详细的剖析。
管理员模块:管理员是系统中的核心用户,管理员登录后,可以对后台系统进行管理。主要功能有:系统首页,个人中心,医生管理,用户管理,预约信息管理,口腔历史管理,用户反馈管理,在线问诊管理,保健知识管理,系统管理等功能。管理员用例如图3-1所示。
图3-1 管理员用例图
用户:用户进入系统可以实现对首页,医生,保健知识,我的页面进行操作,点击我的页面可以进行预约信息,口腔历史,用户反馈,在线问诊详细操作;用户用例如图3-2所示。
图3-2 用户用例图
医生:医生进入系统可以实现对首页,医生,保健知识,我的页面进行操作,点击我的页面可以进行预约信息,口腔历史,用户反馈,在线问诊详细操作;医生用例如图3-3所示。
图3-3 医生用例图
3.4 系统流程分析
3.4.1 数据开发流程
“口腔助手”小程序开发时,首先对此系统进行需求分析,进而对系统进行模块、编码等详细设计总体的设计规划,设计系统功能模块,数据库的选择等,本系统的开发流程如图3-4所示
图3-4系统开发流程图
3.4.2 用户登录流程
要想利用这个软件来进行系统的安全管理,首先需要登录到该软件中。如图3-5所示。
图3-5 登录流程图
3.4.3 系统操作流程
用户登录系统时需要输入正确的用户名和密码,数据库在进行匹配核实后匹配结果正确才能进入系统,若错误则提示用户名或密码错误,即无法登录。操作流程如图3-6所示。
图3-6 系统操作流程图
3.4.4 添加信息流程
管理员可以添加信息,用户添加可以自己权限内的信息,输入信息后,要想利用这个软件来进行系统的安全管理,首先需要登录到该软件中。添加信息流程如图3-7所示。
图3-7 添加信息流程图
3.4.5 修改信息流程
管理员可以修改“口腔助手”管理信息,用户可以修改自己权限内的信息,首先进入修改信息界面,输入需要修改信息,在系统进行判定为正确和合规后修改成功,并将数据更新至数据库。信息不合法则修改失败,重新输入。修改信息流程图如图3-8所示。
图3-8 修改信息流程图
3.4.6 删除信息流程
管理员可以删除“口腔助手”管理信息,点击删除按钮,系统会提示是否删除信息,点击确定,则信息被删除,数据库中的信息随之删除,删除信息流程图如图3-9所示。
图3-9 删除信息流程图
4 系统设计
4.1 系统概要
在对该方法进行了系统的解析之后,进行了一个包括了整体和细节的记性系统的设计。整体的设计仅仅是一个整体的方案,通过整体的方案,我们可以将整个体系中的某些部分分割开来,比如文件,文档,数据等等。经过整体的规划,我们可以将这些软件的各个部分,都分成了不同的部分。不过这仅仅是一种初步的分类,并未实际实施。
总体来说,这是一个初步的方案,也是一个工程。我们可以进行多种方案的综合,在比较中,从性能、成本、效益三方面进行比较,最后得出最佳的产品,选用好的总体设计能够减少成本,提高企业效益,从这一点来讲,整体设计非常重要的。
“口腔助手”小程序工作原理图如图4-1所示:
图4-1 系统工作原理图
4.2 系统结构设计
构图是系统的体系结构,体系结构是体系结构体系的重要组成部分。“口腔助手”小程序的总体结构设计如图4-2所示。
图4-2 系统总体架构图
4.3 数据库设计
在电脑资讯系统中,以资料库为基础。当前计算机体系中最重要的是数据库。数据库的发展好坏,直接关系到整个系统的性能与运行效率。
4.3.1 数据库设计原则
利用 ER模式进行数据库的概念结构设计。E-R模型法的组成元素有:实体、属性、联系,E-R模型用E-R图表示,是一个关于工作环境中的事件的信息,而一个属性是关于物理特征的说明。在系统的设计过程中,资料库发挥了关键作用。下面设计出这几个关键实体的实体—关系图。
4.3.2 数据库实体
本系统的实体属性图如下图所示:
1、用户实体图如图4-3所示:
图4-3用户实体图
2、关于我们实体图如图4-4所示:
图4-4关于我们实体图
3、医疗公告实体图如图4-5所示:
图4-5医疗公告实体图
4、保健知识评论表实体图如图4-6所示:
图4-6保健知识评论表实体图
5、保健知识实体图如图4-7所示:
图4-7保健知识实体图
4.3.3 数据库表设计
“口腔助手”小程序有一个内部数据库。对于数据库系统设计一般基于对我国现有企业数据库系统进行优化管理的操作系统。通常广泛采用的企业数据库资源管理软件系统主要类型包括MySQLserver、MySQL、oracle等。该管理系统主要采用了MySQL大型数据库资源管理软件。
下表将详细列出“口腔助手”小程序的数据库中所有列表。每一份量表的设计成果列出数据库的表信息属于设计的一部分,下面介绍数据库中的各个表的详细信息。
表4-1:用户
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
yonghuming varchar 200 用户名
xingming varchar 200 姓名
mima varchar 200 密码
xingbie varchar 200 性别
lianxidianhua varchar 200 联系电话
shenfenzheng varchar 200 身份证
touxiang longtext 4294967295 头像
表4-2:关于我们
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
title varchar 200 标题
subtitle varchar 200 副标题
content longtext 4294967295 内容
picture1 longtext 4294967295 图片1
picture2 longtext 4294967295 图片2
picture3 longtext 4294967295 图片3
表4-3:医生
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
yishenggonghao varchar 200 医生工号
yishengxingming varchar 200 医生姓名
mima varchar 200 密码
shanzhanglingyu varchar 200 擅长领域
zhicheng varchar 200 职称
xingbie varchar 200 性别
yiling varchar 200 医龄
lianxidianhua varchar 200 联系电话
touxiang longtext 4294967295 头像
suoshuyiyuan varchar 200 所属医院
表4-4:用户表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
username varchar 100 用户名
password varchar 100 密码
role varchar 100 角色 管理员
addtime timestamp 新增时间 CURRENT_TIMESTAMP
表4-5:token表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
userid bigint 用户id
username varchar 100 用户名
tablename varchar 100 表名
role varchar 100 角色
token varchar 200 密码
addtime timestamp 新增时间 CURRENT_TIMESTAMP
expiratedtime timestamp 过期时间 CURRENT_TIMESTAMP
表4-6:收藏表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
userid bigint 用户id
refid bigint 商品id
tablename varchar 200 表名
name varchar 200 名称
picture longtext 4294967295 图片
type varchar 200 类型(1:收藏,21:赞,22:踩,31:竞拍参与,41:关注) 1
inteltype varchar 200 推荐类型
remark varchar 200 备注
表4-7:在线问诊
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
yishenggonghao varchar 200 医生工号
yishengxingming varchar 200 医生姓名
yonghuming varchar 200 用户名
xingming varchar 200 姓名
lianxidianhua varchar 200 联系电话
wenzhenshijian datetime 问诊时间
zhengzhuangmiaoshu longtext 4294967295 症状描述
shhf longtext 4294967295 回复内容
表4-8:医疗公告
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
title varchar 200 标题
introduction longtext 4294967295 简介
picture longtext 4294967295 图片
content longtext 4294967295 内容
表4-9:口腔历史
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
bianhao varchar 200 编号
yonghuming varchar 200 用户名
xingming varchar 200 姓名
yaominshi varchar 200 药敏史
zhengzhuang longtext 4294967295 症状
zhiliaoqingkuang longtext 4294967295 治疗情况
riqi date 日期
yaodan longtext 4294967295 药单
表4-10:保健知识评论表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
refid bigint 关联表id
userid bigint 用户id
avatarurl longtext 4294967295 头像
nickname varchar 200 用户名
content longtext 4294967295 评论内容
reply longtext 4294967295 回复内容
表4-11:预约信息
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
guahaobianhao varchar 200 挂号编号
yishenggonghao varchar 200 医生工号
yishengxingming varchar 200 医生姓名
suoshuyiyuan varchar 200 所属医院
yuyueriqi date 预约日期
yuyuedidian varchar 200 预约地点
shijianduan varchar 200 时间段
yonghuming varchar 200 用户名
xingming varchar 200 姓名
lianxidianhua varchar 200 联系电话
sfsh varchar 200 是否审核 待审核
shhf longtext 4294967295 审核回复
表4-12:配置文件
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
name varchar 100 配置参数名称
value varchar 100 配置参数值
表4-13:用户反馈
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
yishenggonghao varchar 200 医生工号
yishengxingming varchar 200 医生姓名
yonghuming varchar 200 用户名
xingming varchar 200 姓名
lianxidianhua varchar 200 联系电话
wentimiaoshu longtext 4294967295 问题描述
fankuishijian datetime 反馈时间
shhf longtext 4294967295 回复内容
表4-14:保健知识
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
biaotimingcheng varchar 200 标题名称
wenzhangtupian longtext 4294967295 文章图片
zhishishipin longtext 4294967295 知识视频
faburiqi datetime 发布日期
zhishineirong longtext 4294967295 知识内容
thumbsupnum int 赞 0
crazilynum int 踩 0
4.4 系统时序图
对于系统设计的详细描述主要采用了时序图的方式,时序图描述了对象之间传递消息的时间顺序, 用来表示用例中的行为顺序, 是强调消息时间顺序的交互图; 时序图描述的事物: 时序图描述系统中类和类之间的交互, 将这些交互建模成消息交换, 时序图描述了类以及类之间的交换以完成的期望行为的消息, 时序图中每条消息都代表了类的一个操作或者引起状态机改变的触发事件。
4.4.1 注册时序图
注册时序图,如图4-8所示。
图4-8注册时序图
4.4.2 登录时序图
登录时序图如图4-9所示。
图4-9 登录时序图
4.4.3 管理员修改用户信息时序图
管理员修改用户信息时序图如图4-10所示。
图4-10 管理员修改用户信息时序图
4.4.4 管理员管理系统信息时序图
管理员管理系统信息时序图如图4-11所示。
图4-11管理员管理系统信息时序图
5 系统的实现
5.1 基本任务
该系统的实施方式是指能精确地描绘要实施的对象,以便后续的代码可以按照系统的实际情况用编程的方式来写相应的软件。
系统实现的基本任务如下:
(1)模块的数据结构进行设计,在之前的需求分析、概要设计中更加明确地界定更加含糊的资料类型。
(2)更加精确地对每个模板进行了更加细致的算法设计,并对每个组件的处理过程进行了算法的说明。
(3)执行实体化的资料库。
(4)其他设计:有时候,还要考虑到系统的不同,如:输入/输出格式设计、代码设计、人机对话设计等。
(5)对系统的说明书进行编写。
(6)评审:审查程序中的规则和数据库的实体构造。
系统结构可分为具有三个不同功能的包的java源代码、系统的数据库文件、界面代码。java源代码中三个不同包分别为控制、逻辑、缩写层,分别控制也不同的程序具有不同的性质。有了他们就能对系统的数据进行增删改查,完成界面的显示和数据统计,产生随机数和属性文件的读取。定时器类、翻页工具类等,包含了日期转换、字符串处理、获取编译环境等信息。这些类极大地方便了Java编程,日常开发中,经常要用来这些类。
5.2小程序前台首页界面实现
当人们打开微信小程序后,首先看到的就是首页界面。在这里,人们能够看到微信小程序的导航条,用户可以根据导航条进行查找想要的信息,并进行操作;首页界面如图5-1所示:
图5-1 首页界面
第一次使用本小程序的使用者,首先是要进行注册,点击“注册”,然后就会进入到注册的页面里面,将用户信息录入注册表,确认信息正确后,系统才会进入登录界面,用户登录成功后可使用本小程序所提供的所有功能,注册界面如图5-2所示。
图5-2 注册界面
保健知识:在保健知识页面输入标题名称进行搜索,可以看到保健知识详细信息,按照提示即可完成评论或收藏操作。保健知识详情如图5-3所示。
图5-3 保健知识详情界面图
用户登录成功后,点击“我的”进入我的页面,在我的页面可以对预约信息,口腔历史,用户反馈,在线问诊等进行详细操作,用户功能界面如图5-4所示。
图5-4 用户功能界面图
医生登录成功后,点击“我的”进入我的页面,在我的页面可以对预约信息,口腔历史,用户反馈,在线问诊等进行详细操作,医生功能界面如图5-5所示。
图5-5 医生功能界面图
5.3后台管理员模块实现
管理员登录,在登录页面正确输入用户名和密码后,进入操作系统进行操作;如图5-6所示。
图5-6 管理员登录界面
管理员进入主页面,主要功能包括对系统首页,个人中心,医生管理,用户管理,预约信息管理,口腔历史管理,用户反馈管理,在线问诊管理,保健知识管理,系统管理等进行操作。管理员主页面如图5-7所示:
图5-7管理员主界面
管理员点击用户管理。进入用户页面输入用户名可以查询,新增或删除用户信息列表,并根据需要对用户详细信息进行详情,修改和删除等操作。如图5-8所示:
图5-8用户管理界面
管理员点击口腔历史管理。进入口腔历史页面输入用户名可以查询或删除口腔历史列表,并根据需要对口腔历史详细信息进行详情,修改或删除操作。如图5-9所示:
图5-9口腔历史管理界面
管理员点击保健知识管理。进入保健知识页面输入标题名称可以查询、新增或删除保健知识列表,并根据需要对保健知识详细信息进行详情,修改、查看评论或删除操作。如图5-10所示:
图5-10保健知识管理界面
管理员点击系统管理,进入医疗公告页面输入标题可以查询、新增或删除医疗公告列表,并根据需要对医疗公告详细信息进行详情、修改或删除操作,还可以对关于我们、系统简介和轮播图管理进行详细操作;如图5-11所示:
图5-11系统管理界面
6 系统测试
6.1 测试环境
“口腔助手”小程序的测试环境如表6-1所示。
表6-1 测试环境信息表
分类 名称 版本
操作系统 Windows 7
数据库 MySQL 8.0
浏览器 Chrome 87.0.4280.88
6.2 测试目的
进行软件测试主要是为了验证产品或者系统是否完成了实现功能,测试能够防止系统出现错误,还能降低开发成本减少不必要的花销,其次测试的好处包括防止错误、降低开发成本和提高性能。其次,通过软件的检测可以对项目的安全性进行鉴别。向开发人员提供软件测试的反馈,并为项目的安全性评价提供必要的资料。此外,软件的检测保证在正式发布之前能够满足在线要求。在每一个开发过程中不断跟踪和对软件的测试。还有,软件测试还能保证系统到达预期的标准,从而能够尽快上线。
在本系统中,主要测试前端和后端,分别对系统的不同模块进行测试,比如用户主持、用户登录等功能是否实现,实现过程中是否出现问题等。是否能够处理不同的数据。前端主要测试:用户界面的实现和不同界面的交互情况,后端主要测试系统经过管理后前后端链接是否顺畅,前端界面是否及时更新,更新是有误。
6.3 测试概述
1.测试的原则
(1)测试应该以顾客的需要为基础。从用户的观点来考虑,最大的问题是软件不能达到用户的预期。有时候,软件产品的测试结果非常完美,但却不是客户最终想要的产品,那么软件产品的开发就是失败的,而测试工作也是没有任何意义的。因此测试应依照客户的需求配置环境,并且按照客户的使用习惯进行测试并评价结果。
(2)尽早测试。由于软件开发过程中的各种不同的环节都会出现问题,所以要及早进行测试,将软件的检测工作渗透到整个软件的整个寿命过程,使测试者可以及早地察觉并防止这些缺陷。减少了bug修理费用。
(3)穷尽测试是不可能的。因为受时间和财力的制约,无法实现所有不同的输入和输出的综合测试,测试者能够基于测试的风险和轻重缓急等来决定测试的重点,由此来进行测试,并在测试成本、风险和收益间找到一个平衡点。
(4)遵循GoodEnough原则。GoodEnough原则是指测试的投入与产出要适当权衡,形成充分的质量评估过程,这个过程建立在测试花费的代价之上。测试不充分无法保证软件产品的质量,但测试投入过多会造成资源的浪费。随着测试资源投入的增加,测试的产出也是增加的,但当投入达到饱和时,测试的效果也逐渐达到饱和。
(5)测试缺陷要符合“二八”定理。缺陷“二八”理论又名 Pareto原理、缺陷集群效应,通常80%的缺陷都会出现在20%的组件上,缺陷的分配并不均匀。所以在测试中要把握好问题的关键,当发现一些问题较多的时候,就需要花更多的时间和精力来测试它们,以增加测试的效果。
(6)避免缺陷免疫:我们都了解昆虫耐药的原则,也就是长期服用某种药品后,昆虫会对其有抵抗力。而在软件测试中,缺陷也是会产生免疫性的。重复地重复同一个测试案例,找出 bug的机会就会变得更糟;对于软件来说,越是熟练的测试员,就越是忽视那些看似很微小的问题,越是难以找到错误,而这就是所谓的“杀虫剂”效应。这是因为测试者不能按时进行测试案例的升级,也可能是因为他们太了解测试案例和目标而导致的。
2.测试的方法
测试方法主要有人工测试和机器测试两种测试方法。
(1)人工测试
人工测试又称代码复审,包括个人复查、走查、会审三种方法。
(2)机器测试
计算机检测有两种方式:黑盒测试和白盒测试。黑盒测试:从外观上找出它的缺点和错误。黑盒测试是在编程接口上进行的,它仅仅是为了检验样品的执行情况,而不是根据要求规范的要求进行;白盒测试:对软件的内在构造进行了剖析,即在编程接口上进行了试验,其目的仅仅在于检验样品的执行情况,而不能满足要求规范的要求,检测来寻找问题。
在最终的检测中,本研究采取了将后黑盒子检测与白盒子检测相融合的方式。黑箱试验是为了对系统的输入、输出性能进行测试,以发现其性能上的误差和潜在的不足。白箱试验的目的是为了检测程序和程序的运行路线,从而找出运行中的问题。该系统有两种方式:单位试验和综合试验。
6.4 单元测试
6.4.1 注册测试
在对登录模块进行测试时,先键入登录名称和密码,再按下登录键测试是否能正常登录系统。如果信息填写错误,能否弹出弹框,用来提示用户何处输入错误。
注册测试用例如下表所示。
表6-2注册测试用例
测试模块 用户注册模块测试
测试目的 测试当注册信息输入不符合要求时,系统是否能进行相应处理并给出提示。
测试方法 黑盒测试
测试数据 1不输入用户名和密码,直接点击注册。
2输入未注册过的用户名。例如:qwer
3输入正确用户名,两次密码不一样。例如:用户名qwerty、密码 0001,确认密码1111
预期结果 1 界面不跳转,弹出对话框,提示用户输入必填项。
2界面跳转,弹出对话框,提示用户注册成功。
3界面不跳转,弹出对话框,提示两次密码不一致。
实际结果 与预期结果相同。
结论 注册模块实现成功。
6.4.2 登录测试
登录模块需要测试的功能有:输入登录名和密码,点击“登录”按钮,如果信息添加正确,是否正常进入系统首页。如果信息填写错误,能否弹出弹框,提示用户信息输入有误。登录测试用例如下表所示。
表6-3登录测试用例
6.5 集成测试
集成测试的方案主要如下所述:
(1)在完成安装部署后,将该系统移植到其他电脑,并可以顺利地运行该系统。
(2)用户信息管理模块综合测试,新增一个新的使用者qq,指定一个普通的 角色,查看普通角色的特权,并储存设定。作为qqq登录,以了解所具有的权利。
(3)根据“口腔助手”小程序的具体设计和实施,采用多种角色的方式,对各个模块的性能进行检测,并检测各个模块之间的逻辑功是否正确。
通过实验证明,该开发的系统能够满足“口腔助手”管理程序和基础需求。
结 论
“口腔助手”小程序是一款公平、包容、易操作的系统,基本上能满足使用者的需求,也符合本人的初始发展目的与发展方向。本文主要研究了Java语言和MySQL等技术时的应用,它们都具有自己的优势,使其在实际应用中可以实现功能的稳定,同时也可以实现用户的各种需要。在具体的系统要求和功能模块的具体分析之后,进行了有针对性的设计,最终经过了测试,使整个系统可以正常工作,该“口腔助手”小程序设计完成。
在这个“口腔助手”管理的过程中,我参照了许多有关的案例,互相学习,互相借鉴。目前已逐渐改进,但仍存在许多缺陷,需要今后继续研究。在设计过程中我遇到了很多困难,包括知识上和技术上,同时由于长时间没有进行独立开发工作,编码熟练度有了明显的下降,一些常用的函数和编码技巧也变得生疏,但好在我及时做出了学习,查阅各种资料,进行广泛的钻研,多做请教,依靠互联网和书籍不断吸取知识,完善自己,最终在师生的协助下,成功完成了该系统。
我认为此系统还是有很多优点的,首先系统结构清晰,易于理解。设计合理,符合用户习惯和人机交互要求,能给用户带来很好的使用体验。代码简洁,注释全面,易于后期的管理和维护,代码健壮,鲁棒性高,适合高并发和大用户量使用。但同时,也存在部分内容设计不合理,有待改进的情况,我会不断学习。
参考文献
[1] 张继东.MySQL数据库基于java的访问技术[J/OL].电子技术与软件工程,2019,(15):169(2017-08-03).
[2] 方捷. 基于微服务的智慧健康服务平台的设计与实现[D].合肥:安徽大学,2020.
[3]王浩.基于java技术的在线技能评测系统的设计与实现[J].数字技术与应用,2020,(12):171-172.
[4] 李明,王伟,张栋栋.传统架构升级微服务的设计与实现[J].科技传,2019,11(10):140-142.
[5]潘国荣.基于java+JavaBean+Servlet实现模式的增删改模块的设计与实现[J].信息通信,2018,(08):101-103.
[6]葛建霞.《java动态网页设计》网站中项目用户法的应用研究[J].宿州教育学院学报,2019,20(04):160-161.
[7]李清霞.《java动态网页设计》网站建设与用户模式研究[J].福建电脑,2020,33(06):92-93+166.
[8] 于晓虹.微服务架构在分布式系统的设计和应用[J].电子技术与软件工程,2021(06):28-29.
[9]王婷婷. 微信平台开发[J]. 信息技术与信息化… 电子设计工程,2018,24(09):66-68+71.
[10]张晓云. 基于微信公众平台的酒店信息管理服务应用的设计与实现[D].西南交通大学,2018.
[11]付昕. 基于B/S调度信息管理系统的实现[J].山东省农业管理干部学院学报, 2019, 27(4):166-168.
[12] 黄艳峰. 在Java语言中实施“案例医学会网站管理系统”的研究与探索[J]. 电脑知识与技术, 2019, 6(5):1148-1149.
[13] 赵钢. java Servlet+EJB的Web模式应用研究[J]. 电子设计工程,2019, 21(13):47-49.
[14] 肖英. 解决java/Servlet开发中的中文乱码问题[J]. 科技传播, 2018, (1)11-25.
[15] Hsiao I H, Sosnovsky S, Brusilovsky P. Guiding students to the right questions: adaptive navigation support in an e-learning system for Java programming[J]. Journal of Computer Assisted Learning, 2019, 26(4):270-283.
[16]Xue Qingshui,Hou Zongyang,Ma Haifeng,Zhu Haozhi,Ju Xingzhong,Sun Yue. Housing rental system based on blockchain Technology[J]. Journal of Physics: Conference Series,2021,1948(1).
致 谢
时光是这个世界上最快而又最慢,最长而又最短,最平凡而又最珍贵,最容易被忽略又最令人难忘的东西,回望大学三载,可谓白驹过隙,匆匆而已。
然而,时光虽逝,宝贵的情谊却是永恒的,在这三年的光阴里,我最想感谢的就是我的家人、老师以及同窗。寸草之心,难报三春之晖,感谢我的家人,不辞辛劳,让我在求学期间,能够心无旁鹜,不为世俗所扰;天涯有尽,师恩无穷,感谢我的恩师,他温文尔雅、学识渊博让我领略到了何谓学者风范,他乐观、豁达让我体会到了广阔的胸襟与格局,尤其要感谢他在我论文撰写期间的辛勤付出,无论他工作多忙,都会给予我细致耐心地指导;山水一程,三生有幸,感谢法我的兄弟姐妹们,你们的每一次鼓励与帮助都让我倍感温暖。
最后,借此机会,祝愿身边遇到的每一位:万般熙攘化清风朗月,四方梦想皆如愿以偿。