SpringBoot 框架赋能会员制医疗预约系统:接口优化与扩展性增强方案

2开发技术介绍

2.1 Java语言简介

Java是由SUN公司推出,该公司于2010年被oracle公司收购。Java本是印度尼西亚的一个叫做爪洼岛的英文名称,也因此得来java是一杯正冒着热气咖啡的标识。Java语言在移动互联网的大背景下具备了显著的优势和广阔的前景,它是面向对象的,分布式的,动态的,具有平台无关性、安全性、健壮性。Java语言的基本语句语法和C++一样,但是它面向对象的技术更加彻底,因为Java要求将所有的内容都必须封装成类,把类作为程序的基本单位。由于不允许类外有变量、方法。 Java语言的分布式体现在数据分布和操作分布,它是面向网络的语言,可以处理TCP/IP协议,它也支持客户机/服务器的计算模式。Java语言的动态性是指类在运行时是动态安装的,使得Java可以动态的维护程序。Java不支持指针,对内存访问的所有操作都是通过对象实例化实现的,这样就避免了指针操作中易产生的错误,同时也预防了病毒对系统的破坏和威胁。

Java语言的编程风格与C语言非常接近,它继承了C++面向对象技术的核心,它面世之后发展迅速,非常流行,对高级C语言形成了很大的冲击。业内人士称之为"一次编译、到处执行"。当然java也有缺点,在每次执行编译后,字节码都需要消耗一定的时间,在某些程度上降低了性能。但是这并不影响java成为此次设计语言的选择。Java语言简单易学,使用它的编程时间短,功能性强,开发者学习起来更简便、更快。Java的主要特性有以下几个:

1.面向对象

面向对象有四个特点:封装、继承、多态、抽象。抽象是指忽略一个问题中的次要部分,关注主要部分。多态是指对同一种消息做出的不同反应。继承是指在原有的父类方法基础上增加自己独有的方法,而不改变原来父类。

2.平台无关性

Java编译出来的是字节码,直接由虚拟机执行。在任何平台上,只要有Java虚拟机,Java代码都能运行。

3.可靠性和安全性

Java对内存的访问都必须通过对象的实例变量来实现,避免了指针中出现的错误。

4.多线程

Java提供了多线程功能,利用编程实现同一时间同时工作的功能。

2.2 MySql数据库

在软件项目,通过经营性数据的数据库,可以保证其安全,独立和数据一致,访问数据的系统来提供,所以有效减少时间程序员开发应用程序。

MySQL可以支持多线程,可以方便使用系统的资源,提高运行的速度。并提供odbc、jdbc和tcp/ ip,以各种形式连接到MySQL; 功能方面表现欠缺,规模小,但对于这个系统就足够了。

因为MySQL是源代码对外开放的,所以任何人都可以通过相应的方法下载,并根据个性化需求进行修改。由于MySQL的速度,可靠性和适应性,MySQL受到重视。

MySQL虽然功能可能不是很强大,但由于其开源,广泛传播,导致很多人都意识到这个数据库。

2.3 MySQL环境配置

本系统的数据使用的是MySQL,所以要将MySQL安装到指定目录,如果下载的是非安装的MySQL压缩包,直接解压到指定目录就可以了。然后点击C:\Program Files\MySQL\bin\winMySQLadmin.exe这个文件其中C:\Program Files\MySQL是MySQL安装目录。输入winMySQLadmin的初始用户、密码(注:这不是MySQL里的用户、密码)随便填不必在意,确定之后右下角任务的启动栏会出现一个红绿灯的图标,红灯亮代表服务停止,绿灯亮代表服务正常,左击这个图标->winnt->install the service 安装此服务,再左击这个图标->winnt->start the service 启动MySQL服务。

修改MySQL数据库的root密码。用cmd进入命令行模式输入如下命令:

cd C:\Program Files\MySQL\bin

MySQLadmin -u root -p password 123

回车出现Enter password: ,这是要输入原密码. 刚安装时密码为空,所以直接回车,此时MySQL 中账号 root 的密码被改为 123 安装完毕。

2.4 B/S结构

B/S的系统是通过能上网的电脑就可以使用,它最大的优点是不需要安装专门的软件,首先浏览器向服务器发出请求,然后服务器处理请求把信息再返回给浏览器。不需要再次对数据进行存取与计算数据,只要负责显示数据来降低要求,如果说客户端像个"瘦子",而服务器会越来越"胖"。B/S体系结构与C/S体系结构相比,最大的不同是:B/S体系的应用软件使用网络浏览器作为与用户交互的平台,而C/S则需要开发专用的应用程序。

图2-1 B/S结构图

2.5SpringBoot框架

SpringBoot是一个全新开源的轻量级框架。基于Spring4.0设计,其不仅继承了Spring框架原来有的优秀特性,而且还通过简化配置文件来进一步简化了Spring应用的整个搭建以及开发过程。另外在原本的Spring中由于随着项目的扩大导入的jar包数量越来越大,随之出现了jar包版本之间的兼容性问题,而此时SpringBoot通过集成大量的框架使得依赖包的版本冲突,以及引用的不稳定性问题得到了很好的解决。

SpringBoot可以看做是Spring的加强版本,但实质上都是Spring的相关技术,有了这些优秀的开源框架,程序员在开发过程中将事半功倍。

4系统总体设计

4.1系统结构

会员制医疗预约服务管理信息系统,它是一个由人、电脑及其他组件构成的,一种能够收集、存储、加工、传送信息的系统。该系统可以帮助决策者找出当前急需解决的问题,然后将信息快速的反馈,使管理人员能够以最快的时间知道目前的现状,进行更进一步的计划。

当前MIS系统结构目前存在两种较为流行的结构:C/S和B/S两种。

C/S结构的系统:C/S结构就是客户机服务器结构,它可以法派任务到Client端和Server端来进行,充分利用两端硬件环境的优势,来降低系统的通讯的花费。客户端主要作用是处理人机交互,执行客户端应用程序,收集数据以及向服务器发送任务请求。服务器基本作用是执行后台程序,它主要对客户机的请求申请进行反馈,除此之外,它的作用还包括:数据库存储系统的共享管理、通讯管理、文件管理等等。

B/S结构的系统:这种网络结构简化了客户端,并把系统功能实现的中心集中到服务器上,在这种模式中,只需要一个浏览器就可以了。这种结构将很多的工作交于WEB服务器,只通过浏览器请求WEB服务,随后根据请求返回信息。

通常在只在企业网内部使用,采用C/S。而使用不仅限于内网的情况下使用B/S。考虑到本管理系统的一系列需求,所以,该系统开发使用B/S结构开发。其主要功能结构如下图所示。

图4-1系统总体功能结构图

4.2数据库设计

数据库设计是指为系统提供最优化的数据库模式,使得应用程序能够有效的存储数据,满足用户的各类需求。

4.2.1 数据库概念结构设计

概念结构设计是根据用户需求形成的。用最常的E-R方法描述数据模型进行数据库的概念设计,首先设计局部的E-R模式,最后各局部ER模式综合成一个全局模式。然后再把概念模式转换成逻辑模式。将概念设计从设计过程中独立开来,设计复杂程度降低,不受特定DBMS的限制。

1.所有实体和属性的定义如下所示。

医院信息管理实体属性图,如图4-2所示:

图4-2医院信息管理实体属性图

药品信息管理实体属性图,如图4-3所示:

图4-3药品信息管理实体属性图

4.2.2数据库逻辑结构设计

根据E-R得出数据库包涵了以下几张数据表来实现了对数据库的存储、调用。以下分别列出数据表的每个字段名、数据类型、主外键及备注。

表4-1:挂号预约

字段名称 类型 长度 字段说明 主键 默认值

id bigint 主键 主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP

yuyuebianhao varchar 200 预约编号

gonghao varchar 200 工号

yishengxingming varchar 200 医生姓名

yiyuanmingcheng varchar 200 医院名称

yiyuandizhi varchar 200 医院地址

keshimingcheng varchar 200 科室名称

keshidizhi varchar 200 科室地址

guahaofei varchar 200 挂号费

yuyueriqi date 预约日期

yuyuebeizhu varchar 200 预约备注

zhanghao varchar 200 账号

xingming varchar 200 姓名

shoujihaoma varchar 200 手机号码

sfsh varchar 200 是否审核 否

shhf longtext 4294967295 审核回复

ispay varchar 200 是否支付 未支付

表4-2:条形码机

字段名称 类型 长度 字段说明 主键 默认值

id bigint 主键 主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP

mingcheng varchar 200 名称

tupian varchar 200 图片

zhanghao varchar 200 账号

xingming varchar 200 姓名

beizhu varchar 200 备注

表4-3:使用须知

字段名称 类型 长度 字段说明 主键 默认值

id bigint 主键 主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP

biaoti varchar 200 标题

neirong longtext 4294967295 内容

表4-4:住院信息

字段名称 类型 长度 字段说明 主键 默认值

id bigint 主键 主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP

gonghao varchar 200 工号

yishengxingming varchar 200 医生姓名

yiyuanmingcheng varchar 200 医院名称

keshimingcheng varchar 200 科室名称

zhuyuanmingcheng varchar 200 住院名称

feiyong int 费用

zhuyuanriqi date 住院日期

zhuyuanbeizhu longtext 4294967295 住院备注

zhanghao varchar 200 账号

xingming varchar 200 姓名

ispay varchar 200 是否支付 未支付

表4-5:配置文件

字段名称 类型 长度 字段说明 主键 默认值

id bigint 主键 主键

name varchar 100 配置参数名称

value varchar 100 配置参数值

表4-6:就诊引导

字段名称 类型 长度 字段说明 主键 默认值

id bigint 主键 主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP

title varchar 200 标题

introduction longtext 4294967295 简介

picture varchar 200 图片

content longtext 4294967295 内容

表4-7:诊断信息

字段名称 类型 长度 字段说明 主键 默认值

id bigint 主键 主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP

gonghao varchar 200 工号

yishengxingming varchar 200 医生姓名

yiyuanmingcheng varchar 200 医院名称

keshimingcheng varchar 200 科室名称

zhenduanmingcheng varchar 200 诊断名称

bingqingjilu longtext 4294967295 病情记录

zhenduanneirong longtext 4294967295 诊断内容

zhanghao varchar 200 账号

xingming varchar 200 姓名

zhenduanriqi date 诊断日期

表4-8:处方信息

字段名称 类型 长度 字段说明 主键 默认值

id bigint 主键 主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP

gonghao varchar 200 工号

yishengxingming varchar 200 医生姓名

yiyuanmingcheng varchar 200 医院名称

keshimingcheng varchar 200 科室名称

chufangmingcheng varchar 200 处方名称

yaopinmingcheng varchar 200 药品名称

danjia int 单价

shuliang int 数量

jine int 金额

zhanghao varchar 200 账号

xingming varchar 200 姓名

beizhu longtext 4294967295 备注

caozuoriqi date 操作日期

ispay varchar 200 是否支付 未支付

表4-9:科室信息

字段名称 类型 长度 字段说明 主键 默认值

id bigint 主键 主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP

keshimingcheng varchar 200 科室名称

keshidizhi varchar 200 科室地址

表4-10:在线咨询

字段名称 类型 长度 字段说明 主键 默认值

id bigint 主键 主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP

gonghao varchar 200 工号

yishengxingming varchar 200 医生姓名

zixunneirong varchar 200 咨询内容

zhanghao varchar 200 账号

xingming varchar 200 姓名

zixunriqi date 咨询日期

表4-11:疾控通知

字段名称 类型 长度 字段说明 主键 默认值

id bigint 主键 主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP

biaoti varchar 200 标题

fengmian varchar 200 封面

zhuyishixiang varchar 200 注意事项

jianjie longtext 4294967295 简介

neirong longtext 4294967295 内容

gonghao varchar 200 工号

yishengxingming varchar 200 医生姓名

faburiqi date 发布日期

表4-12:医院信息

字段名称 类型 长度 字段说明 主键 默认值

id bigint 主键 主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP

yiyuanmingcheng varchar 200 医院名称

yiyuandizhi varchar 200 医院地址

yiyuantupian varchar 200 医院图片

yuanzhang varchar 200 院长

chenglishijian date 成立时间

lianxidianhua varchar 200 联系电话

yiyuanjianjie longtext 4294967295 医院简介

yiyuanxiangqing longtext 4294967295 医院详情

表4-13:医生

字段名称 类型 长度 字段说明 主键 默认值

id bigint 主键 主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP

gonghao varchar 200 工号

mima varchar 200 密码

yishengxingming varchar 200 医生姓名

xingbie varchar 200 性别

shenfenzheng varchar 200 身份证

shoujihaoma varchar 200 手机号码

xiangpian varchar 200 相片

yiyuanmingcheng varchar 200 医院名称

yiyuandizhi varchar 200 医院地址

keshimingcheng varchar 200 科室名称

keshidizhi varchar 200 科室地址

表4-14:健康资讯

字段名称 类型 长度 字段说明 主键 默认值

id bigint 主键 主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP

zixunbiaoti varchar 200 资讯标题

zixunfengmian varchar 200 资讯封面

zixunleixing varchar 200 资讯类型

zixunjianjie longtext 4294967295 资讯简介

zixunneirong longtext 4294967295 资讯内容

gonghao varchar 200 工号

yishengxingming varchar 200 医生姓名

faburiqi date 发布日期

表4-15:药品信息

字段名称 类型 长度 字段说明 主键 默认值

id bigint 主键 主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP

yaopinmingcheng varchar 200 药品名称

yaopintupian varchar 200 药品图片

yaopinjianjie longtext 4294967295 药品简介

yaopingongxiao varchar 200 药品功效

fuyongfangshi varchar 200 服用方式

danjia int 单价

shengchanshang varchar 200 生产商

表4-16:健康档案

字段名称 类型 长度 字段说明 主键 默认值

id bigint 主键 主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP

danganbianhao varchar 200 档案编号

zhanghao varchar 200 账号

xingming varchar 200 姓名

shengaocm varchar 200 身高cm

tizhongkg varchar 200 体重kg

xueyapa varchar 200 血压pa

xuetangg varchar 200 血糖g

tiwen varchar 200 体温

shuimianshijian varchar 200 睡眠时间

yundongqingkuang varchar 200 运动情况

fujian varchar 200 附件

beizhu varchar 200 备注

dengjiriqi date 登记日期

表4-17:用户表

字段名称 类型 长度 字段说明 主键 默认值

id bigint 主键 主键

username varchar 100 用户名

password varchar 100 密码

role varchar 100 角色 管理员

addtime timestamp 新增时间 CURRENT_TIMESTAMP

表4-18:检测结果

字段名称 类型 长度 字段说明 主键 默认值

id bigint 主键 主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP

jiancemingcheng varchar 200 检测名称

jiancedidian varchar 200 检测地点

jianceleixing varchar 200 检测类型

feiyong varchar 200 费用

zhanghao varchar 200 账号

xingming varchar 200 姓名

jiancejieguo varchar 200 检测结果

beizhu varchar 200 备注

fasongriqi date 发送日期

表4-19:会员

字段名称 类型 长度 字段说明 主键 默认值

id bigint 主键 主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP

zhanghao varchar 200 账号

mima varchar 200 密码

xingming varchar 200 姓名

xingbie varchar 200 性别

shenfenzheng varchar 200 身份证

shoujihaoma varchar 200 手机号码

xiangpian varchar 200 相片

表1-20: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-21:核酸预约

字段名称 类型 长度 字段说明 主键 默认值

id bigint 主键 主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP

jiancemingcheng varchar 200 检测名称

jiancedidian varchar 200 检测地点

jianceleixing varchar 200 检测类型

feiyong varchar 200 费用

zhanghao varchar 200 账号

xingming varchar 200 姓名

shenqingyuanyin varchar 200 申请原因

shenqingriqi date 申请日期

sfsh varchar 200 是否审核 否

shhf longtext 4294967295 审核回复

ispay varchar 200 是否支付 未支付

表4-22:体检信息

字段名称 类型 长度 字段说明 主键 默认值

id bigint 主键 主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP

tijianmingcheng varchar 200 体检名称

tijianneirong longtext 4294967295 体检内容

gonghao varchar 200 工号

yishengxingming varchar 200 医生姓名

keshimingcheng varchar 200 科室名称

zhanghao varchar 200 账号

xingming varchar 200 姓名

shoujihaoma varchar 200 手机号码

beizhu varchar 200 备注

faburiqi date 发布日期

表4-23:坐诊信息

字段名称 类型 长度 字段说明 主键 默认值

id bigint 主键 主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP

gonghao varchar 200 工号

yishengxingming varchar 200 医生姓名

xingbie varchar 200 性别

yiyuanmingcheng varchar 200 医院名称

yiyuandizhi varchar 200 医院地址

keshimingcheng varchar 200 科室名称

keshidizhi varchar 200 科室地址

xiangpian varchar 200 相片

guahaofei int 挂号费

yishengjianjie longtext 4294967295 医生简介

sfsh varchar 200 是否审核 否

shhf longtext 4294967295 审核回复

表4-24:核酸检测

字段名称 类型 长度 字段说明 主键 默认值

id bigint 主键 主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP

jiancemingcheng varchar 200 检测名称

jiancefengmian varchar 200 检测封面

jiancedidian varchar 200 检测地点

jianceleixing varchar 200 检测类型

zhuyishixiang longtext 4294967295 注意事项

feiyong int 费用

faburiqi date 发布日期

表4-25:体检报告

字段名称 类型 长度 字段说明 主键 默认值

id bigint 主键 主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP

tijianmingcheng varchar 200 体检名称

tijianbaogao varchar 200 体检报告

gonghao varchar 200 工号

yishengxingming varchar 200 医生姓名

keshimingcheng varchar 200 科室名称

zhanghao varchar 200 账号

xingming varchar 200 姓名

shoujihaoma varchar 200 手机号码

beizhu varchar 200 备注

tixingxinxi varchar 200 提醒信息

fasongriqi date 发送日期

表4-26:咨询回复

字段名称 类型 长度 字段说明 主键 默认值

id bigint 主键 主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP

gonghao varchar 200 工号

yishengxingming varchar 200 医生姓名

zixunneirong varchar 200 咨询内容

huifuneirong longtext 4294967295 回复内容

zhanghao varchar 200 账号

xingming varchar 200 姓名

huifuriqi date 回复日期

表4-27:收藏表

字段名称 类型 长度 字段说明 主键 默认值

id bigint 主键 主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP

userid bigint 用户id

refid bigint 收藏id

tablename varchar 200 表名

name varchar 200 收藏名称

picture varchar 200 收藏图片

type varchar 200 类型(1:收藏,21:赞,22:踩) 1

inteltype varchar 200 推荐类型

相关推荐
因我你好久不见2 分钟前
springboot java ffmpeg 视频压缩、提取视频帧图片、获取视频分辨率
java·spring boot·ffmpeg
程序员shen1616113 分钟前
抖音短视频saas矩阵源码系统开发所需掌握的技术
java·前端·数据库·python·算法
Ling_suu32 分钟前
SpringBoot3——Web开发
java·服务器·前端
Yvemil739 分钟前
《开启微服务之旅:Spring Boot Web开发》(二)
前端·spring boot·微服务
hanglove_lucky41 分钟前
本地摄像头视频流在html中打开
前端·后端·html
天使day1 小时前
SpringMVC
java·spring·java-ee
计算机学长felix1 小时前
基于SpringBoot的“旅游管理系统”的设计与实现(源码+数据库+文档+PPT)
spring boot·毕业设计
CodeClimb1 小时前
【华为OD-E卷-简单的自动曝光 100分(python、java、c++、js、c)】
java·python·华为od
风清云淡_A1 小时前
【java基础系列】实现数字的首位交换算法
java·算法
Gao_xu_sheng1 小时前
Java程序打包成exe,无Java环境也能运行
java·开发语言