赞
踩
目录
1 绪论 3
1.1 项目开发背景 3
1.2 项目开发意义 3
1.3 项目主要的内容 4
2 相关技术介绍及系统环境开发条件 5
2.1相关技术介绍 5
2.2系统环境开发条件 6
3 系统的需求分析与设计 6
3.1可行性分析 7
3.2需求分析 7
3.2.1系统总体概述 8
3.2.2功能性需求 8
3.2.3非功能性需求 10
3.2.4流程图设计 11
3.2.5系统时序图设计 11
3.2.5系统ER图设计 13
3.3 数据库设计 14
3.3.1数据库设计的原则 14
3.3.3数据库表的设计 15
4系统功能模块实现 16
4.1 前端功能页面实现 17
4.1.1登陆注册模块实现 17
4.1.2健康列表视频模块实现 18
4.1.3非语言文字列表模块实现 19
4.1.4测试记录模块实现 20
4.2 后端功能页面实现 20
4.2日志功能模块 25
4.3安装部署 25
5 系统测试 26
5.1系统调试的目的和意义 26
5.2功能测试用例 27
6总结 28
参考文献: 29
致 谢 30
摘要:随着人们生活节奏的加快,大学生心理健康问题一直是社会所关注的焦点问题之一,各个高校对学生的心理健康的问题都相当重视,经常性的组织对学生进行心理调查,以达到尽早发现,尽早治疗的目的。本课题主要通过微信小程序心里健康测试系统来达到早预防早干预。
本系统主要采用spring开发框架制。使用的技术有mysql数据库、mybatis驱动框架以及tomcat服务端部署,用到的集成开发工具主要是IDEA和jdk1.8。
关键词: 微信小程序健康系统; spring; 测试设计;mysql
Abstract: with the acceleration of people’s pace of life, the mental health of college students has always been one of the focuses of social attention. Colleges and universities attach great importance to the mental health of students, and often organize psychological surveys on students, so as to achieve the purpose of early detection and treatment. This topic mainly through wechat small program mental health test system to achieve early prevention and early intervention.
The system mainly adopts spring development framework. The technologies used include MySQL database, mybatis driver framework and Tomcat server deployment. The integrated development tools used are mainly idea and JDK1.8.
The supermarket management system has the following major functions: supplier management, inventory management, category management, commodity management, cashier management, business management. In the following chapters, the function and implementation of each function will be introduced in turn.
Key words: wechat, small program, health system; spring; Test design; mysql
1 绪论
1.1项目开发背景
在我国社会变迁过程中,社会生活发生了许多复杂的变化,大学生心理健康问题一直是社会所关注的焦点问题之一,各个高校对学生的心理健康的问题都相当重视,经常性的组织对学生进行心理调查,以达到尽早发现,尽早治疗的目的。心理健康一直是全社会非常关注的问题,心理健康同生理健康一样也可以通过一些既定的指标来衡量。一般认为,心理健康是指具有正常的智力、积极的情绪、适度的情感、和谐的人际关系、良好的人格品质、坚强的意志和成熟的心理行为等。健康的心理状态和良好的心理素质是一个人全面发展所必须具备的条件和基础。作为现代社会组成部分,在大学院校生活和学习的大学生,对社会心理这块时代的“晴雨表”,十分敏感。况且,大学生作为一个特殊的社会群体,还有他们自己许多特殊的问题,如对新的学习环境与任务的适应问题。对专业的选择与学习的适应问题,理想与现实的冲突问题,人际关系的处理与学习、恋爱中的矛盾问题以及对未来职业的选择问题等等。如何使他们避免或消除由上述种种心理压力而造成的心理应激、心理危机或心理障碍,增进心身健康,以积极的、正常的心理状态去适应当前和发展的社会环境,预防精神疾患和心身疾病的发生,加强对大学生的心理健康教育,就成为各高校迫切的需要和共同关注的问题。
本系统结合业务需求,及购物流程,量身定制一款超市管理软件。主要解决快速商品定位、会员折后等实用性功能,使用的技术:采用java语言开发,mysql8.0作为数据库,springboot开发框架。
1.2项目开发意义
随着社会的发展、科技的进步和经济的繁荣,社会对“人才”提出了更高的要求。现代高校的任务不再是培养安处象牙塔中潜心修研的大学生,而是要培养大批能勇敢面对知识经济挑战的,适应现代社会高科技、高效率、高竞争要求的,具有良好综合素质的创新型人才。另一方面,对于每一位大学生来说,现代社会人才的竞争使他们处于“天之骄子”的优越感与“一介布衣”的平常感的矛盾交织之中。学习不再是大学生唯一关注的内容,少年时代对大学生的憧憬与大学生活的现实间发生撞击,自我的整合、自我与社会的融合成为每一位大学生面临的挑战和成长的任务。因此在大学对学生的心理状况的了解和治疗是非常重要的,因此想到开发此软件——基于微信小程序的大学生心理健康测试设计与实现。
微信小程序开发能够降低开发成本,考虑到不同平台的兼容性,微信小程序能够满足不用使用需求,降低了程序的开发成本节约了时间周期,让系统利用微信的优势能够推广和简化相应的流程,只要通过扫描二维码具能够完成。
(1)国外研究现状
目前,国外一些国家在利用有线网络开展学生心理健康教育方面已经有了一些实质 上的进展。成千上万的教师也在应用这种互联网有效地开展大学生网民的心理教育。网络正以一种激进方式改变着学生之间、老师和家长之间的关系。家长和老师可以通过电子邮件保持经常联系。美国加州软件制造商Thinkwave.com网站的发言人John.Poluektov认为:“现在父母更了解学校或单位所发生的事,不管我们走到哪儿,都会听到用户说,它改变了教育运作的方式,尤其是对大学生网民而言,不存在不知道自己发展状况的借口,也不存在不知道自己在学校或单位位置的借口”。
移动互联网和大学生心理健康测试的结合,将带来大学生心理健康教育的创新,使大学生心理健康教育获得种种新的机遇。
(2)国内研究现状
大学生心理健康研究主要通过问卷调查以及心理测量法,应用的主要工具是问卷与量表。我国常用的心理健康水平测量表主要有大学生人格问卷( UPI)、症状自评量表( SCL-90 )、艾格森人格问卷(EPQ)、考试焦虑量表焦虑自评量表和抑郁自评量表(SAS/SDS )等。除了常规应用这类型的量表之外,还会使用Meta进行分析,应用最多的就是SCL-90量表。但是其中很多量表都是引进于外国,尽管有常模,但是其适用范围仍然存在较大的差乒。有学者认为SCL-90不适合对正常人进行评价,个I月牧高的实证效度。认为SCL-90常模需要续订的学首个在少数,对于当前得到的大学生心理健康状沉牧吊模要差的情况也持怀疑的态度。不仅是SCL-90,其他的量表在大学生心理健康的评价中同样仔在较多的问题,还有不正确解释心理测量结果的现象。针对这样的情况,有不少学者开始进行相关工作,布望能够开发出适合我国大学生群体的重衣。1例近年来应用较多的大学生心理健康自评量表( SMHRS ),具有较高的信度与效度;此外,中国大学生心理健康相关评定量表由教育部组织研制,这一套量表具有针对性,作为大学生心理健康的评估工具具有较高的应用价值。
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.1.3操作性:本系统设计到的功能主要有会员管理模块、测试管理、内容管理、系统设置,这些功能模块的相关知识,都是平常所设计到的常用功能,在操作上都是可以实现的。
3.2需求分析
通过了解用户的需求,可以知道操作简单的系统更易受到用户青睐,同时能够准确、完整的对信息进行管理。微信小程序心理测试平台在对需求做相应的分析后,得出结论,系统主要分为两个角色:后端管理员和前端普通用户。
管理员模块主要进行数据的更新管理,功能分为系统会员管理模块、测试管理、内容管理、系统设置;前端用户主要我的资料、通知公告、心理健康视频、语言文字测试和非语言文字测试。
3.2.1系统总体概述
该项目管理系统主要基于B/S设计模式,系统设计的功能有:会员管理模块、测试管理、内容管理、系统设置。其系统结构如图3-1所示:
如图3-1结构图
3.2.2功能性需求
本系统是利用现代化的计算机网络技术将传统信息宣传方式整合,按照实践过程设计完成的。同时完善服务,初步设计一个微信智能停车系统平台以利于相关的事务操作。为了使系统在各项管理中发挥更大的作用,实现计算机信息化高效的管理,现将开发目标功能需求介绍如下:
(1) 管理员登录模块
管理员有权进行系统的管理,但所有的注册以及权限的使用,都需经过超级管理员授权,管理员进入主页后可以对用户进行相关功能的授权,比如:用户管理、测试管理、内容管理、系统设置。
(2) 会员管理模块
拥有一定管理权限管理员,可进行会员列表的查看,以及对应的会员增加、删除、修改、查询操作。
(3) 测试管理模块
拥有一定管理权限管理员,可进行语言文字类、非语言文字里列表的数据查看,以及对应的增加、删除、修改、查询操作。
(4) 内容管理模块
拥有一定管理权限管理员,可进行公告管理、视频列表的数据查看,以及对应的增加、删除、修改、查询操作。
(5) 系统设置管理模块
拥有一定管理权限管理员,可进行角色列表及管理员的数据查看及修改操作。
3.2.3非功能性需求
该系统不仅要满足功能性需求,还需要满足看不到的非功能性需求,比如系统的兼容性、用户界面整体性、网页访问的流畅性,主要归纳如下几点:
类别 需求描述
兼容性 支持多浏览器访问。
界面性 网站整体美观、元素搭配协调。
安全性 访问控制不受到攻击,防止sql注入。
3.2.4流程图设计
心理健康测试管理系统工作流程为: 管理员通过账号和密码登陆系统,可以对会员、系统测试、内容管理、系统设置进行管理。以下是总体的流程图设计如图3-2:
3.2.5系统时序图设计
个单独且具有相互关联需要表示的事物构成系统的顺序。时序图将更加直观的表示模块之间的联系,使模块的功能更加清晰的表现出来。本系统几个重要时序图如下:
(1)登录模块时序图
登录模块充当验证角色,只有数据库中游的管理员信息才能成功登陆,进入系统首页。登录模块顺序图如图 所示。
(2)测试模块时序图
测试模块记录回答问题内容,当用户进入测试内容时,可以根据题目内容选择自己需要回答的内容,在做完题目时,会将记录保存到记录表中,记录表会将添加成功的记录返回给用户,提示添加完成。测试模块顺序图如图所示。
3.2.5系统ER图设计
系统管理员可以对用户进行相关属性账号、密码、姓名、专业、班级等相关进行的管理;也可以对测试管理属性测试名称、测试人、创建时间、结果评估进行查看;也可以对系统管理员和角色进行权限上的管理;也可以对内容管理中的标题、内容进行相应操作。如图3-3系统ER属性图:
管理员属性表:登陆时间、账号、状态、登陆id、密码
3.3 数据库设计
3.3.1数据库设计的原则
在建表时,表的主键要尽量的少,在表与表之间建立外键关系时,也要尽量的少,尽量减少数据库查询和CRUD操作的复杂度;系统恢复性操作,在设计数据库文件中考虑到表如果出现损坏,在短时间内可以快速的恢复,减少成本的支出。在数据库系统开发过程中,一般都需要满足以下几个特点:字段冗余少,就是在设计表字段时,尽量减少不必要多余的字段出现,在设置表的参数类型时,合理控制参数字段长度;保密性和安全性要强,不要把系统关键字设置在表中,防止sql注入攻击;表与表之间的管理性要合理化,尽量减少三张以上的管理表查询,减少sql查询带来的系统性能的下降。
3.3.3数据库表的设计
会员管理表(user_name):用户编号、用户名称、、用户密码、性别、姓名、专业、班级、辅导员表3-1会员管理表(user_name)
字段名 字段描述 类型/长度 约束 备注
user_id 用户编号 Bigint PK
username 用户名称 Varchar(20) NOT NULL
password 用户密码 Varchar(20) NOT NULL
sex 性别 Varchar(20)
Userreal 姓名 Varchar(20)
Zhuanye 专业 Varchar(20)
Banji 班级 Varchar(20)
fudaoyuan 辅导员 Varchar(20)
测试列表管理(ceshishi):id、测试人、测试名称、结果评估、测试时间
表3-2测试信息表(produceMsg)
字段名 字段描述 类型/长度 约束 备注
id id Bigint PK
Question_user 测试人 Varchar(20) NOT NULL
Question_title 测试名称 Double NOT NULL
Result_pg 结果评估 Varchar(20)
Question_date 测试时间 datetime
公告列表(notice):id、标题、内容、创建时间
表3-3公告列表(order)
字段名 字段描述 类型/长度 约束 备注
id id Bigint PK
Notice_name 标题 Varchar(20) NOT NULL
Contetn 内容 Double NOT NULL
Create_date 创建时间 Int
视频管理列表(video_manager):id、标题、内容、回复、视频地址、回复人、回复时间
表3-4视频管理列表(video_manager)
字段名 字段描述 类型/长度 约束 备注
id id Bigint PK
Titele 标题 Varchar(20) NOT NULL
content 内容 Text NOT NULL
replay 回复 Text
Videw_src 视频地址 Text
Replay_user 回复人 Text
date_tiem 回复时间 Datatiem
管理员信息表(admin):编号id、账号、密码、状态、登陆时间、登陆ip、部门
表3-5管理员信息表(admin)
字段名 字段描述 类型/长度 约束 备注
user_id 用户编号 Bigint PK
username 用户名称 Varchar(20) NOT NULL
password 用户密码 Varchar(20) NOT NULL
Status 状态 Int
dengshijian 上次登陆时间 Varchar(20)
dengip 上次登陆id Varchar(20)
Bumen 部门 Varchar(20)
4系统功能模块实现
本次系统采用 java 和 mysql 相互结合的架构来进行开发微信系统程序的应用,系统中所有与微信小程序密切相关的事情和操作都时间上通过一个与数据库相关的类文件来进行实现,很大程度上增强了代码的耦合度,当得到数据库的类型等信息发生变化后直接进行修改与其相关的类别和文件就完全可以了,不再因为此而需要每一个页面都进行任何修改。除此之外,本系统还很好地解决了简体中文的困难,也就是在配置文件中添加了编码语言方式的多种形式来得到解决的,本系统另外一个重要的特征就是,该系统对于数据库的所有操作都单独地被写在一个分类里,这样只需要访问这个分类就能够对系统的所有数据库进行操作,不用对每个分类的页面去做一个写数据库的分类操作,很大程度的从而增强系统的整体集成度。
4.1 前端功能页面实现
4.1.1登陆注册模块实现
该页面作为前端页面的入口,只有注册登陆的用户可进行系统的评估测试,在注册模块,主要设定参数用户名、姓名、性别、密码、辅导员、专业、属性,完成注册后,通过账号和密码即可进入系统。
部分代码如下:
postRequest(’/app/member/login’,{username:this.data.username,password:this.data.password}).then(res=>{
wx.reLaunch({
url: ‘/pages/index/index’
})
算法实现:前端登陆页面通过post请求访问/app/member/login路径,当返回结果success时,系统会根据wx.Relanuchs方法中的url访问前端页面的首页/pages/index/index
4.1.2健康列表视频模块实现
当用户点击健康版块中的健康列表页后,可以跳转到视频中心也,用户可点击任意一项查看视频内容、视频标题和创建时间。
主要代码如下:
Pageable pageable = new Pageable(pageNumber, 10);
Page page = tVideoService.list(pageable, new TVideo());
setJson(page, AppAPIUtil.jsonConfig);
算法实现:
new Pageable对象方法主要用来记录分页的参数,tVideoService.list()方法用来查询视频所有内容,并将查询到的结果保存到page,并调用 AppAPIUtil.jsonConfig配置参数进行格式化成json返回给前端页面。
4.1.3非语言文字列表模块实现
该模块主要通过一段简短视频,让用户回答视频所发生的内容,在视频正下方,会留有需要回答的问题,当用户点击我要测试按钮会跳转到测试页面,进行我的回答窗口。
主要代码如下:
http.postRequest(’/app/nonver_question/list’,{pageNumber: that.data.pageNumber}).then(res=>{
if (type == 1) {
page = that.data.page.concat(data.content);
}
算法实现:该页面通过post请求调用/app/nonver_question/list接口,获取所有测试视频的列表页,当查询到结果后,会通过res中的data属性,将所有值循环遍历到页面中去。
4.1.4测试记录模块实现
当用户完成语言文字类或非语言文字类问答时,会在测试记录中显示详情,当用户点击后,会看到测试详细页面内容,还有评估结果,及创建 的时间。
基于微信小程序的大学生心理健康测试设计与实现 .docx:点击下载》》》
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。