基于Java+Springmvc+vue+element实现高校心理健康系统详细设计和实现
基于Java+Springmvc+vue+element实现高校心理健康系统详细设计和实现
博主介绍:多年java开发经验,专注Java开发、定制、远程、文档编写指导等,csdn特邀作者、专注于Java技术领域
作者主页 央顺技术团队
Java毕设项目精品实战案例《1000套》
欢迎点赞 收藏 ⭐留言
文末获取源码联系方式
文章目录
- 基于Java+Springmvc+vue+element实现高校心理健康系统详细设计和实现
- 前言介绍:
- 系统设计:
- 系统结构图如下图所示:
- 登录模块顺序图:登录模块主要满足了管理员以及其他用户的权限登录,登录模块顺序图如图
- 添加信息模块顺序图:管理员以及其他用户登录后均可进行添加信息操作,添加信息模块顺序图
- 功能截图:
- 登录注册:
- 测试题目:
- 留言反馈:
- 个人中心:
- 学生端后台功能:
- 咨询师后台功能:
- 管理员后台功能:
- 学生管理:
- 文章信息管理:
- 预约信息管理:
- 测试题目管理:
- 测试信息管理:
- 测试结果管理:
- 留言板管理:
- 系统录播图管理:
- 代码实现:
- 论文参考:
- 获取源码:
前言介绍:
随着社会经济的发展,医疗卫生事业取得了巨大进步,在心理健康教育占据越来越重要的地位,什么是心理健康:心理健康,从广义上讲,是指一种高效而满意的、持续的心理状态。从狭义上讲,心理健康是指人的基本心理活动的过程内容完整、协调一致,即认识、情感、意志、行为、人格完整和协调,能适应社会,与社会保持同步。
全国有20.23%的大学生存在不同程度的心理障碍甚至心理疾患,25%的大学生需要精神卫生服务,10%有明显的心理障碍症状,急需心理咨询与心理治疗。心理障碍已成为当今大学生身心健康的最大威胁。心理健康教育显得十分必要,
心理健康教育开发使系统能够更加方便学生捷,同时也促使心理健康教育变的更加系统化、有序化。系统界面较友好,易于操作。具体在系统设计上,采用B/S结构,java技术动态页面上进行了设计,Mysql数据库进行储存,是一个非常优秀的心理健康教育系统。
系统设计:
管理员功能设计;首页、个人中心、学生管理、咨询师管理、文章信息管理、预约信息管理、测试题目管理、测试信息管理、测试结果管理、试题管理、留言板管理、系统管理结构图,如图:
系统结构图如下图所示:
登录模块顺序图:登录模块主要满足了管理员以及其他用户的权限登录,登录模块顺序图如图
添加信息模块顺序图:管理员以及其他用户登录后均可进行添加信息操作,添加信息模块顺序图
功能截图:
登录注册:
输入个人的账号、密码、角色登录系统,这时候系统的数据库就会在进行查找相关的信息,如果我们输入的账号、密码不正确,数据库就会提示出错误的信息提示,同时会提示管理员重新输入自己的账号、密码,直到账号密码输入成功后,会提登录成功的信息
测试题目:
可以进行查看详情、修改、删除等操作
点击可以进行题目测试心情查看、填写测试答案等
留言反馈:
个人中心:
个人中心:学生通过个人信息页面查看学号、密码、姓名、性别、头像、身份证、手机等信息可进行添加、修改、删除操作。
学生端后台功能:
学生进入后台页面查看首页、个人中心、预约信息管理、测试信息管理、测试结果管理、留言板管理、我的收藏管理等信息
咨询师后台功能:
咨询师进入后台页面查看首页、个人中心、预约信息管理、预约信息审核、测试信息管理、测试结果管理、留言板管理、我的收藏管理等信息
管理员后台功能:
管理员可以进行个人中心、学生管理、咨询师管理、文章信息管理、预约信息管理、测试题目管理、测试信息管理、测试结果管理、留言板管理、我的收藏管理、系统管理等模块的管理
学生管理:
管理员对学生信息管理进行查看学号、密码、姓名、性别、头像、身份证、手机等信息进行删除、修改以及查看等操作
文章信息管理:
预约信息管理:
管理员可以对预约信息管理查看详情可进行修改、删除等操作
测试题目管理:
测试信息管理:
管理员可以对测试题目查看详情可进行修改、删除等操作
测试结果管理:
留言板管理:
系统录播图管理:
管理员通过系统管理页面查看轮播图管理等进行上传图片进行添加、删除、修改以及查看并对整个系统进行维护等操作
代码实现:
/*** 预约信息* 后端接口* @author * @email * @date 2022-01-08 11:11:36*/
@RestController
@RequestMapping("/yuyuexinxi")
public class YuyuexinxiController {@Autowiredprivate YuyuexinxiService yuyuexinxiService;/*** 后端列表*/@RequestMapping("/page")public R page(@RequestParam Map<String, Object> params,YuyuexinxiEntity yuyuexinxi, HttpServletRequest request){String tableName = request.getSession().getAttribute("tableName").toString();if(tableName.equals("zixunshi")) {yuyuexinxi.setZhanghao((String)request.getSession().getAttribute("username"));}if(tableName.equals("xuesheng")) {yuyuexinxi.setXuehao((String)request.getSession().getAttribute("username"));}EntityWrapper<YuyuexinxiEntity> ew = new EntityWrapper<YuyuexinxiEntity>();PageUtils page = yuyuexinxiService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, yuyuexinxi), params), params));return R.ok().put("data", page);}/*** 前端列表*/@RequestMapping("/list")public R list(@RequestParam Map<String, Object> params,YuyuexinxiEntity yuyuexinxi, HttpServletRequest request){EntityWrapper<YuyuexinxiEntity> ew = new EntityWrapper<YuyuexinxiEntity>();PageUtils page = yuyuexinxiService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, yuyuexinxi), params), params));return R.ok().put("data", page);}/*** 列表*/@RequestMapping("/lists")public R list( YuyuexinxiEntity yuyuexinxi){EntityWrapper<YuyuexinxiEntity> ew = new EntityWrapper<YuyuexinxiEntity>();ew.allEq(MPUtil.allEQMapPre( yuyuexinxi, "yuyuexinxi")); return R.ok().put("data", yuyuexinxiService.selectListView(ew));}/*** 查询*/@RequestMapping("/query")public R query(YuyuexinxiEntity yuyuexinxi){EntityWrapper< YuyuexinxiEntity> ew = new EntityWrapper< YuyuexinxiEntity>();ew.allEq(MPUtil.allEQMapPre( yuyuexinxi, "yuyuexinxi")); YuyuexinxiView yuyuexinxiView = yuyuexinxiService.selectView(ew);return R.ok("查询预约信息成功").put("data", yuyuexinxiView);}/*** 后端详情*/@RequestMapping("/info/{id}")public R info(@PathVariable("id") String id){YuyuexinxiEntity yuyuexinxi = yuyuexinxiService.selectById(id);return R.ok().put("data", yuyuexinxi);}/*** 前端详情*/@RequestMapping("/detail/{id}")public R detail(@PathVariable("id") String id){YuyuexinxiEntity yuyuexinxi = yuyuexinxiService.selectById(id);return R.ok().put("data", yuyuexinxi);}/*** 后端保存*/@RequestMapping("/save")public R save(@RequestBody YuyuexinxiEntity yuyuexinxi, HttpServletRequest request){yuyuexinxi.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());//ValidatorUtils.validateEntity(yuyuexinxi);yuyuexinxiService.insert(yuyuexinxi);return R.ok();}/*** 前端保存*/@RequestMapping("/add")public R add(@RequestBody YuyuexinxiEntity yuyuexinxi, HttpServletRequest request){yuyuexinxi.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());//ValidatorUtils.validateEntity(yuyuexinxi);yuyuexinxiService.insert(yuyuexinxi);return R.ok();}/*** 修改*/@RequestMapping("/update")public R update(@RequestBody YuyuexinxiEntity yuyuexinxi, HttpServletRequest request){//ValidatorUtils.validateEntity(yuyuexinxi);yuyuexinxiService.updateById(yuyuexinxi);//全部更新return R.ok();}/*** 删除*/@RequestMapping("/delete")public R delete(@RequestBody Long[] ids){yuyuexinxiService.deleteBatchIds(Arrays.asList(ids));return R.ok();}/*** 提醒接口*/@RequestMapping("/remind/{columnName}/{type}")public R remindCount(@PathVariable("columnName") String columnName, HttpServletRequest request, @PathVariable("type") String type,@RequestParam Map<String, Object> map) {map.put("column", columnName);map.put("type", type);if(type.equals("2")) {SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");Calendar c = Calendar.getInstance();Date remindStartDate = null;Date remindEndDate = null;if(map.get("remindstart")!=null) {Integer remindStart = Integer.parseInt(map.get("remindstart").toString());c.setTime(new Date()); c.add(Calendar.DAY_OF_MONTH,remindStart);remindStartDate = c.getTime();map.put("remindstart", sdf.format(remindStartDate));}if(map.get("remindend")!=null) {Integer remindEnd = Integer.parseInt(map.get("remindend").toString());c.setTime(new Date());c.add(Calendar.DAY_OF_MONTH,remindEnd);remindEndDate = c.getTime();map.put("remindend", sdf.format(remindEndDate));}}Wrapper<YuyuexinxiEntity> wrapper = new EntityWrapper<YuyuexinxiEntity>();if(map.get("remindstart")!=null) {wrapper.ge(columnName, map.get("remindstart"));}if(map.get("remindend")!=null) {wrapper.le(columnName, map.get("remindend"));}String tableName = request.getSession().getAttribute("tableName").toString();if(tableName.equals("zixunshi")) {wrapper.eq("zhanghao", (String)request.getSession().getAttribute("username"));}if(tableName.equals("xuesheng")) {wrapper.eq("xuehao", (String)request.getSession().getAttribute("username"));}int count = yuyuexinxiService.selectCount(wrapper);return R.ok().put("count", count);}}
论文参考:
获取源码:
大家点赞、收藏、关注、评论啦
🍅查看下方微信号获取联系方式 📝
🚀🚀🚀精彩系列推荐
Java毕设项目精品实战案例《1000套》
精彩专栏推荐订阅:在下方专栏
相关文章:

基于Java+Springmvc+vue+element实现高校心理健康系统详细设计和实现
基于JavaSpringmvcvueelement实现高校心理健康系统详细设计和实现 博主介绍:多年java开发经验,专注Java开发、定制、远程、文档编写指导等,csdn特邀作者、专注于Java技术领域 作者主页 央顺技术团队 Java毕设项目精品实战案例《1000套》 欢迎点赞 收藏 ⭐…...

python --阿里云(智能媒体管理/视频点播)
智能媒体服务获取token # alibabacloud_imm202009304.1.0 class Sample(object):智能媒体服务def __init__(self):self.access_key 111self.key_secret 222def weboffice_permission(self):return imm_20200930_models.WebofficePermission(renameFalse,readonlyTrue,histor…...

湖南麒麟SSH服务漏洞
针对湖南麒麟操作系统进行漏洞检测时,会报SSH漏洞风险提醒,具体如下: 针对这些漏洞,可以关闭SSH服务(前提是应用已经部署完毕不再需要通过SSH远程访问传输文件的情况下,此时可以通过VNC远程登录方法&#x…...

升级ChatGPT4.0失败的解决方案
ChatGPT 4.0科普 ChatGPT 4.0是一款具有多项出众功能的新一代AI语言模型。以下是关于ChatGPT 4.0的一些关键特点和科普内容: 多模态:ChatGPT 4.0具备处理不同类型输入和输出的能力。这意味着它不仅可以接收文字信息,还能处理图片、视频等多媒…...

常用图像滤波器,图像增强
滤波器 滤波器在图像处理中有各种各样的应用,它们可以用于去除噪声、平滑图像、增强图像特征等。以下是一些常见的滤波器及其主要应用: 均值滤波器(Mean Filter): 用于去除高斯噪声或均匀噪声。 平滑图像࿰…...

【PyTorch】成功解决ModuleNotFoundError: No module named ‘torch’
【PyTorch】成功解决ModuleNotFoundError: No module named ‘torch’ 🌈 个人主页:高斯小哥 🔥 高质量专栏:Matplotlib之旅:零基础精通数据可视化、Python基础【高质量合集】、PyTorch零基础入门教程👈 希…...

CommandInvokationFailure: Failed to update Android SDK package list. 报错的解决方法
将Unity升级到2021.3.36f1, 再次打开项目,结果出现“CommandInvokationFailure: Failed to update Android SDK package list. ”这样的警告,查看SDK版本最高只有到30,这应该就是Unity自动升级SDK的时候出现了错误,导致…...

9.用FFmpeg测试H.264文件的解码时间
1. Essence of Method 要测试对H.264文件的解码时间,可以使用FFmpeg进行操作。FFmpeg是一个开源的多媒体处理工具,可以用来处理视频和音频文件,包括解码H.264文件。以下是使用FFmpeg的命令行来测试解码时间的方法: ffmpeg -i in…...

重建3D结构方式 | 显式重建与隐式重建(Implicit Reconstruction)
在3D感知领域,包括3D目标检测在内,显式重建和隐式重建是两种不同的方法来表示和处理三维数据。它们各自有优势和局限,适用于不同的场景和需求。 显式重建(Explicit Reconstruction) 显式重建是指直接构建场景或物体的三…...

模型的参数量、计算量、延时等的关系
模型的参数量、计算量、延时等的关系 基本概念相互关系代码计算 基本概念 1.参数量:Params 2.计算量:FLOPs,Floating Point Operations,浮点运算次数,用来衡量模型计算复杂度。 3.延时:Latency 4.内存访问…...

Java映射(含源码)
在Java中,“映射”(Map)是一个存储键值对的数据结构,允许你通过键(Key)快速访问值(Value)。映射中的每个键都是唯一的,这意味着每个键都对应一个特定的值。Java提供了几种…...

JMeter 面试题及答案整理,最新面试题
JMeter中如何进行性能测试的规划和设计? 进行JMeter性能测试的规划和设计主要遵循以下几个步骤: 1、确定测试目标: 明确性能测试的目的和目标,比如确定要测试的系统性能指标(如响应时间、吞吐量、并发用户数等&#…...

lua脚本的基础内容
官方地址:http://luajit.org/ 官方wiki地址:http://wiki.luajit.org/Home 推荐书籍: OpenResty 最佳实践:https://moonbingbing.gitbooks.io/openresty-best-practices/content/ lua基础文档:https://www.runoob.com/l…...

MySQL语法分类 DDL(1)
DDL(1)(操作数据库、表) 数据库操作(CRUD) C(Create):创建 //指定字符集创建 create database db_1 character set utf8;//避免重复创建数据库报错可以用一下命令 create database if not exists db_1 character set utf8;R(Retrieve):查询 //查询所…...

苹果Find My App用处多多,产品认准伦茨科技ST17H6x芯片
苹果发布AirTag发布以来,大家都更加注重物品的防丢,苹果的 Find My 就可以查找 iPhone、Mac、AirPods、Apple Watch,如今的Find My已经不单单可以查找苹果的设备,随着第三方设备的加入,将丰富Find My Network的版图。产…...

Lua中文语言编程源码-第三节,更改lualib.h Lua标准库, 使Lua支持中文关键词(与所有的基础库相关)
源码已经更新在CSDN的码库里: git clone https://gitcode.com/funsion/CLua.git 在src文件夹下的lualib.h,是Lua的标准库模块。 Lua标准库一共有有个10个库,base, 基本用不着改,所以没加中文名称。 函数声明宏名英文库名中文库…...

Vue | 使用 ECharts 绘制折线图
目录 一、安装和引入 ECharts 二、使用 ECharts 2.1 新增 div 盒子 2.2 编写画图函数 2.3 完整代码结构 三、各种小问题 3.1 函数调用问题 3.2 数据格式问题 3.3 坐标轴标签问题 3.4 间隔显示标签 参考博客:Vue —— ECharts实现折线图 本文是在上…...

NVENC 视频编码器 API 编程指南 ( 中文转译 )
基于 NVIDIA Kepler™ 和更高版本 GPU 架构的 NVIDIA GPU 包含基于硬件的 H.264/HEVC/AV1 视频编码器(以下简称 NVENC)。NVENC 硬件采用 YUV/RGB 作为输入,并生成符合H.264/HEVC/AV1 标准的视频比特流。可以使用 NVIDIA 视频编解码器 SDK 中提…...

媒体发稿:澳门媒体发稿7个流程
推广平台澳门是一个重要的度假旅游娱乐终点,都是媒体领域热议的话题。对于澳门的媒体发稿营销推广要求,大家提供了一个简单易用的套餐系统软件,帮助大家在澳门媒体上发表推广文章。下面我们就根据7个阶段,详解构建这一套餐推广平台…...

Spring Web MVC入门(2)
学习Spring MVC Postman介绍 在软件工程中, 我们需要具有前后端分离的思想, 以降低耦合性. 但是在测试后端代码时,我们还得写前端代码测试,这是个令人头疼的问题. 那么我们如何测试自己的后端程序呢, 这就用到了一个工具: Postman. 界面介绍: 传参的介绍 1.普通传参, 也就…...

tomcat 实现会话绑定
Tomcat 后端服务器实现 Session ID会话保持 基础架构: 7-6 代理服务器nginx配置 7-3 tomcat 服务器 7-5 同理 测试: 此时刷新,会话ID一直在变,这样不好 如何解决呢? 不好的是确定ip之后,会一直在一台机上…...

Android Studio中快速修改包名
Android Studio中快速修改包名 假设原包名是com.abc.efg, 新包名是com.aaa.bbb 1、点击齿轮图标,把Compact Middle Packages前面的对勾取消,如果没有就忽略此步 2、在左侧项目栏中,选择Android, App-->java-->com,下面可以看…...

solr/ES 分词插件Jcseg设置自定义词库
步骤: 1、找到配置文件jcseg-core/target/classes/jcseg.properties修改配置: 下载地址: https://gitee.com/lionsoul/jcseg#5-如何自定义使用词库 lexicon.path {jar.dir}/../custom-word 设置lexicon路径,我们这个配置可以自定义…...

嵌入式硬件设计(一)|利用 NodeMCU-ESP8266 开发板和继电器结合APP“点灯•blinker”制作Wi-Fi智能开关(附有关硬件详细资料)
概述 本文主要讲述利用 NodeMCU-ESP8266 开发板和继电器通过手机 APP “ 点灯 • Blinker ” 制作一款能够由手机控制的WiFi 智能开关,从而实现智能物联。NodeMCU 是基于 Lua 的开源固件,ESP8266-NodeMCU是一个开源硬件开发板,支持WiFi功能&a…...

CSS扩展选择器
文章目录 1. 并集选择器2. 交集选择器3. 后代选择器4. 子代选择器5. 兄弟选择器5.1. 相邻兄弟选择器5.2. 通用兄弟选择器 6. 属性选择器7. 伪类选择器7.1. 动态伪类7.2. 结构伪类7.3. 否定伪类 8. 伪元素选择器9. Google 改进案例 1. 并集选择器 选中多个选择器对应的元素。一…...

知名Web3投资基金a16z合伙人Jane Lippencott确认出席Hack.Summit() 2024区块链开发者大会
在区块链技术的风起云涌和Web3生态的蓬勃发展中,知名a16z Crypto的合伙人Jane Lippencott已确认出席即将于2024年4月9日至10日在香港数码港举行的Hack.Summit() 2024区块链开发者大会。作为亚洲首次举办的Hack.Summit(),此次大会将为全球区块链开发者及业…...

电脑那个部件坏了或者是哪个软件需要修复来看价钱
电脑维修价格表是多少? 价格取决于计算机的哪个部分损坏或哪个软件需要修复。 由于电脑中的部件非常多,而且会以各种奇怪的方式出现问题,下面我们就来看看具体的充电方法。 电脑维修价格表: 1. 重新安装系统。 安装XP系统通常需…...

GiT: Towards Generalist Vision Transformer through Universal Language Interface
GiT: Towards Generalist Vision Transformer through Universal Language Interface 相关链接:arxiv github 关键字:Generalist Vision Transformer (GiT)、Universal Language Interface、Multi-task Learning、Zero-shot Transfer、Transformer 摘要 …...

纽约时报起诉OpenAI和微软将决定未来LLM的发展
《纽约时报》诉OpenAI和微软案对未来LLM发展的重大影响 案件背景 《纽约时报》(NYT)近期对OpenAI和微软提起诉讼,指控OpenAI未经授权使用其受版权保护的内容来训练其AI模型,包括ChatGPT。NYT声称,OpenAI使用了数百万篇其文章,这…...

IntelliJ IDEA 面试题及答案整理,最新面试题
IntelliJ IDEA中的插件系统如何工作? IntelliJ IDEA的插件系统工作原理如下: 1、插件架构: IntelliJ IDEA通过插件架构扩展其功能,插件可以添加新的功能或修改现有功能。 2、安装和管理: 通过IDEA内置的插件市场下载…...