目录
一、系统包含的技术:
后端:SpringBoot maven
前端:layui,js,css等
开发工具:IDEA
数据库:MySQL
JDK版本:jdk1.8
二、模块设计思路
用户端模块设计:首页、文章、心理评测、留言、公告、个人中心;用户登录系统后可在心理评测页面进行答题评分,系统会根据答题情况进行性格分析,包括内向、外向、外内混合等性格;
登录注册模块:密码加密、增加验证码、身份验证
管理端模块设计思路: 文章管理,留言管理,用户管理,心理测评,公告管理,系统设置
文章列表:文章预览、点击对应板块可进行查看
三、项目运行截图
咨询老师板块:可以在线预约
心理测评板块:测试完成系统会出现对应的心理健康分数
留言板块:
老师界面:公告查询、公告添加、查看、编辑、删除等;
四、项目代码分析
存放用户登入的Session
public class LoginSession {
public static final String USER_IN_SESSION = "user_in_session";
//获取session对象
private static HttpSession getSession() {
return ((ServletRequestAttributes) (RequestContextHolder.getRequestAttributes())).getRequest().getSession();
}
//设置用户登入的Session
public static void setUserInSession(User contextUser) {
if (contextUser != null) {
//保存session
getSession().setAttribute(USER_IN_SESSION, contextUser);
} else {
//注销session
getSession().invalidate();
}
}
public static void setStuInSession(SysStudent contextUser) {
if (contextUser != null) {
//保存session
getSession().setAttribute(USER_IN_SESSION, contextUser);
} else {
//注销session
getSession().invalidate();
}
}
public static void setTeaInSession(SysTeacher contextUser) {
if (contextUser != null) {
//保存session
getSession().setAttribute(USER_IN_SESSION, contextUser);
} else {
//注销session
getSession().invalidate();
}
}
//共享给外部调用登入session
public static User getCurrentUser() {
return (User) getSession().getAttribute(USER_IN_SESSION);
}
public static SysTeacher getCurrentTea() {
return (SysTeacher) getSession().getAttribute(USER_IN_SESSION);
}
public static SysStudent getCurrentStu() {
return (SysStudent) getSession().getAttribute(USER_IN_SESSION);
}
}
返回指定格式的日期字符串
package com.yuanlrc.xinli.util;
import java.text.SimpleDateFormat;
import java.util.Date;
public class StringUitls {
/**
* 返回指定格式的日期字符串
* @param date
* @param formatter
* @return
*/
public static String getFormatterDate(Date date, String formatter){
SimpleDateFormat sdf = new SimpleDateFormat(formatter);
return sdf.format(date);
}
}
Layui表格封装json格式数据工具类
private int code;
private String msg;
private long count;
private T data;
public ServerLayResult() {
}
public ServerLayResult(int code, String msg, long count, T data) {
this.code = code;
this.msg = msg;
this.count = count;
this.data = data;
}
………
五、项目优化升级
前端:三件套 + React + 组件库 Ant Design + Umi + Ant Design Pro(现成的管理系统)
后端:
-
java
-
spring(依赖注入框架,帮助你管理 Java 对象,集成一些其他的内容)
-
springmvc(web 框架,提供接口访问、restful接口等能力)
-
mybatis(Java 操作数据库的框架,持久层框架,对 jdbc 的封装)
-
mybatis-plus(对 mybatis 的增强,不用写 sql 也能实现增删改查)
-
springboot(快速启动 / 快速集成项目。不用自己管理 spring 配置,不用自己整合各种框架)
-
junit 单元测试库
-
mysql
部署:服务器 / 容器(平台)
六、结语
感谢大家的阅读,愿我们的未来一片光明。