摘 要
社会发展日新月异,用计算机应用实现数据管理功能已经算是很完善的了,但是随着移动互联网的到来,处理信息不再受制于地理位置的限制,处理信息及时高效,备受人们的喜爱。本次开发一套人格障碍诊断系统,有管理员,医生,用户三个角色。管理员可以管理所有,包含个人中心,用户管理,医生管理,公告信息管理,咨询信息管理,诊断记录管理,测试模板管理,试题管理,系统管理,考试管理等。医生和用户都可以注册登录,医生主要接待用户的咨询,并且管理自己参与的诊断记录。用户主要可以参考测试,咨询医生,查看自己的诊断记录等。人格障碍诊断系统服务端用Java开发,用Spring Boot框架开发的网站后台,数据库用到了MySQL数据库作为数据的存储。这样就让用户用着方便快捷,都通过同一个后台进行业务处理,而后台又可以根据并发量做好部署,用硬件和软件进行协作,满足于数据的交互式处理,让用户的数据存储更安全,得到数据更方便。
关键字:人格障碍诊断系统;Spring Boot框架;Java;MySQL
目 录
第1章 绪论
1.1 研究背景
互联网时代不仅仅是通过各种各样的电脑进行网络连接的时代,也包含了移动终端连接互联网进行复杂处理的一些事情。传统的互联网时代一般泛指就是PC端,也就是电脑互联网时代,但是最近几十年,是移动互联网时代,是向下一步互联网时代过度的一个重要时代,下一个互联网时代叫物联网,而移动互联网就是一个风口,是当前社会的主流风向。目前移动互联网大行其道,人人都手中拿着智能机,手机手机,手不离机,如果开发一个用在手机上的程序软件,那是多么的符合潮流,符合管理者和客户的理想。本次就是开发人格障碍诊断系统,有管理员,医生,用户三个角色。管理员可以管理所有,包含个人中心,用户管理,医生管理,公告信息管理,咨询信息管理,诊断记录管理,测试模板管理,试题管理,系统管理,考试管理等。医生和用户都可以注册登录,医生主要接待用户的咨询,并且管理自己参与的诊断记录。用户主要可以参考测试,咨询医生,查看自己的诊断记录等。
第4章 系统设计
4.1 系统设计的原则
在系统设计过程中,也需要遵循相应的设计原则,这些设计原则可以帮助设计者在短时间内设计出符合设计规范的设计方案。设计原则主要有可靠性,安全性,可定制化,可扩展性,可维护性,可升级性以及客户体验等原则。下面就对这些原则进行简要阐述。
可靠性:一个软件是否可靠决定了其是否被用户使用,设计不可靠的软件,用户很容易就遗弃;
安全性:程序软件承担了信息的保存与管理等事务,安全性不足的软件会导致使用者承担巨大的损失;所以系统安全也是需要考虑进入的;
可定制化:市场环境从来都不是一直固定不变,面对客户群体的改变,以及使用环境的改变,市场需求的改变等因素,程序软件也要易于调整以适应各种变化;
可扩展性:程序软件在运行使用期间,也需要及时引进当下的新技术来进行系统优化,主要就是在系统功能层面,系统性能层面上进行相应的扩展,只有这样才能让系统在实际生活中继续占有市场;
可维护性:程序软件的维护需要一定量的资金,不管是排除现有程序错误,还是变更软件的现有需求,都需要在软件技术上投入一定资金,所以易于维护的软件程序就可以降低技术层面的资金消耗;
可升级性:程序软件的投入使用,会面临用户数量增多的情况,用户对软件的使用率也会提升,所以系统面临这种情况,仍然需要通过升级保持性能的合理,这样才能够适应市场;
客户体验:设计出来的程序软件在界面上不能够太复杂,要遵循界面设计的原理设计出简单,方便操作的功能操作界面,让用户易于接受软件,并乐于使用软件提供的功能。
4.2 功能结构设计
在管理员功能模块确定下来的基础上,对管理员各个功能进行设计,确定管理员功能的详细模块。绘制的管理员功能结构见下图。管理员可以管理所有,包含个人中心,用户管理,医生管理,公告信息管理,咨询信息管理,诊断记录管理,测试模板管理,试题管理,系统管理,考试管理等。
4.3.2 数据库表结构
在进行这部分设计之前,需要明白和掌握数据类型以及各个数据类型的长度范围等知识,因为在一张具体的数据表中,为了方便理解,这里就举个简单的例子。比如用户信息表,这个表格的字段就是用户这个实体具备的属性,这时就需要对字段进行数据类型,以及字段长度的设置,也要设置一个主键来作为用户信息表的唯一标识。这些都是数据库表结构设计需要完成的内容。根据人格障碍诊断系统的功能设计以及数据库设计要求,展示该系统的数据表结构。
1咨询信息表
序号 | 列名 | 数据类型 | 说明 | 允许空 |
1 | Id | Int | id | 否 |
2 | addtime | Date | 创建时间 | 是 |
3 | yishengzhanghao | String | 医生账号 | 是 |
4 | yishengxingming | String | 医生姓名 | 是 |
5 | yishengzhiwei | String | 医生职位 | 是 |
6 | zixunneirong | String | 资询内容 | 是 |
7 | zixunshijian | datetime | 咨询时间 | 是 |
8 | yonghuzhanghao | String | 用户账号 | 是 |
9 | yonghuxingming | String | 用户姓名 | 是 |
10 | sfsh | String | 是否审核 | 是 |
11 | shhf | String | 审核回复 | 是 |
2试题表表
序号 | 列名 | 数据类型 | 说明 | 允许空 |
1 | Id | Int | id | 否 |
2 | addtime | Date | 创建时间 | 是 |
3 | paperid | Integer | 所属测试模板id(外键) | 是 |
4 | papername | String | 测试模板名称 | 是 |
5 | questionname | String | 试题名称 | 是 |
6 | options | String | 选项,json字符串 | 是 |
7 | score | Integer | 分值 | 是 |
8 | answer | String | 正确答案 | 是 |
9 | analysis | String | 答案解析 | 是 |
10 | type | Integer | 试题类型,0:单选题 1:多选题 2:判断题 3:填空题(暂不考虑多项填空) | 是 |
11 | sequence | Integer | 试题排序,值越大排越前面 | 是 |
3用户表
序号 | 列名 | 数据类型 | 说明 | 允许空 |
1 | Id | Int | id | 否 |
2 | addtime | Date | 创建时间 | 是 |
3 | yonghuzhanghao | String | 用户账号 | 是 |
4 | yonghuxingming | String | 用户姓名 | 是 |
5 | mima | String | 密码 | 是 |
6 | xingbie | String | 性别 | 是 |
7 | shoujihao | String | 手机号 | 是 |
8 | touxiang | String | 头像 | 是 |
4诊断记录表
序号 | 列名 | 数据类型 | 说明 | 允许空 |
1 | Id | Int | id | 否 |
2 | addtime | Date | 创建时间 | 是 |
3 | yonghuzhanghao | String | 用户账号 | 是 |
4 | yonghuxingming | String | 用户姓名 | 是 |
5 | zhenduanneirong | String | 诊断内容 | 是 |
6 | yishengzhanghao | String | 医生账号 | 是 |
7 | yishengxingming | String | 医生姓名 | 是 |
8 | zhenduanshijian | datetime | 诊断时间 | 是 |
5测试模板表表
序号 | 列名 | 数据类型 | 说明 | 允许空 |
1 | Id | Int | id | 否 |
2 | addtime | Date | 创建时间 | 是 |
3 | name | String | 测试模板名称 | 是 |
4 | time | Integer | 考试时长(分钟) | 是 |
5 | status | Integer | 测试模板状态 | 是 |
6公告信息表
序号 | 列名 | 数据类型 | 说明 | 允许空 |
1 | Id | Int | id | 否 |
2 | addtime | Date | 创建时间 | 是 |
3 | biaoti | String | 标题 | 是 |
4 | fengmian | String | 封面 | 是 |
5 | gonggaoneirong | String | 公告内容 | 是 |
6 | fabushijian | date | 发布时间 | 是 |
7配置文件表
序号 | 列名 | 数据类型 | 说明 | 允许空 |
1 | Id | Int | id | 否 |
2 | name | String | 配置参数名称 | 是 |
3 | value | String | 配置参数值 | 是 |
8考试记录表表
序号 | 列名 | 数据类型 | 说明 | 允许空 |
1 | Id | Int | id | 否 |
2 | addtime | Date | 创建时间 | 是 |
3 | userid | Integer | 用户id | 是 |
4 | username | String | 用户名 | 是 |
5 | paperid | Integer | 测试模板id(外键) | 是 |
6 | papername | String | 测试模板名称 | 是 |
7 | questionid | Integer | 试题id(外键) | 是 |
8 | questionname | String | 试题名称 | 是 |
9 | options | String | 选项,json字符串 | 是 |
10 | score | Integer | 分值 | 是 |
11 | answer | String | 正确答案 | 是 |
12 | analysis | String | 答案解析 | 是 |
13 | myscore | Integer | 试题得分 | 是 |
14 | myanswer | String | 考生答案 | 是 |
9医生表
序号 | 列名 | 数据类型 | 说明 | 允许空 |
1 | Id | Int | id | 否 |
2 | addtime | Date | 创建时间 | 是 |
3 | yishengzhanghao | String | 医生账号 | 是 |
4 | yishengxingming | String | 医生姓名 | 是 |
5 | mima | String | 密码 | 是 |
6 | xingbie | String | 性别 | 是 |
7 | shoujihao | String | 手机号 | 是 |
8 | yishengzhiwei | String | 医生职位 | 是 |
9 | yishengjianjie | String | 医生简介 | 是 |
10 | touxiang | String | 头像 | 是 |
11 | sfsh | String | 是否审核 | 是 |
12 | shhf | String | 审核回复 | 是 |
10用户表表
序号 | 列名 | 数据类型 | 说明 | 允许空 |
1 | Id | Int | id | 否 |
2 | username | String | 用户名 | 是 |
3 | password | String | 密码 | 是 |
4 | role | String | 角色 | 是 |
5 | addtime | Date | 新增时间 | 是 |
11token表表
序号 | 列名 | 数据类型 | 说明 | 允许空 |
1 | Id | Int | id | 否 |
2 | userid | Integer | 用户id | 是 |
3 | username | String | 用户名 | 是 |
4 | tablename | String | 表名 | 是 |
5 | role | String | 角色 | 是 |
6 | token | String | 密码 | 是 |
7 | addtime | Date | 新增时间 | 是 |
8 | expiratedtime | Date | 过期时间 | 是 |
第5章 系统实现
系统实现这个章节的内容主要还是展示系统的功能界面设计效果,在实现系统基本功能,比如修改,比如添加,比如删除等管理功能的同时,也显示出系统各个功能的界面实现效果,该部分内容一方面与前面提到的系统分析,系统设计的内容相呼应,另一方面也是一个实际成果的展示。
5.1管理员和医生功能实现
5.1.1 用户管理
管理员可以对用户信息进行添加,修改,删除,查询操作。
5.1.2 公告信息管理
管理员可以对公告信息信息进行添加,修改,删除,查询操作。
5.1.3 测试模板管理
管理员可以对测试模板进行添加,修改,删除,查询操作。
5.1.4 诊断记录管理
医生可以对诊断记录进行添加,修改,删除操作。
5.2 用户功能实现
5.2.1 医生信息
用户不登录可以查看医生信息,但是要咨询医生必须注册登录。
5.2.2 测试模板
用户可以点击测试模板参考里面的考试。
结 论
人格障碍诊断系统的开发制作,从题目确定到成品完成,自己投入的精力与心血是非常多的。这也是我第一次使用Spring Boot框架语言,开发的这个比较简单的人格障碍诊断系统。
人格障碍诊断系统开发过程中,自己之前觉得比较抽象的许多门课程,例如数据库原理,软件工程,动态网站开发等课程开始变得很清晰,只有自己独立开发程序,才会觉得这些开发类的课程在实践中具有的重要作用。为了让自己设计的作品能够顺利的完成,我把所学知识全部运用在程序的开发流程中,包括了程序的需求分析环节,程序的编码环节,程序的测试环节等,让程序软件在开发周期内完成制作,并能够保证程序质量达标,力求程序开发流程规范化,程序对应的配套文档标准化。
独立开发程序期间,才会发现有许多知识都是现学现用得来的,毕竟大学期间所学知识比较有限,专业知识掌握得比较浅显,这也给自己制造了许多麻烦,比如程序开发期间遇到的中文乱码问题,程序对应数据库的数据安全问题,程序开发中框架的使用问题等,这些问题都需要随时去翻阅书籍,或通过百度浏览器等方式寻找解决办法,这也耽误了许多程序开发的宝贵时间,后期我也通过对周边同学的请教,以及指导老师的悉心指导,让我找到了程序开发的相关技巧,也积累了一定的知识量,慢慢地纠正了许多不该犯的错误。也推动了我的程序开发进程。
人格障碍诊断系统现已完成了开发,除了基本功能可以符合用户需求外,在页面设计层面上没有融入更多的设计元素,需要从美学角度进行优化,另外在程序的代码层面,也有许多重合部分,需要进行整理归类,让代码变得更加的简洁。
实践出真知,但是知识也是通过实践变得更加深刻,这次作品制作,让自己的专业知识水平与解决问题的能力得到了提高。也让自己更加明白活到老学到老的真正含义。