Releases: KuroChan1998/Student-Information-Administration-System
Releases · KuroChan1998/Student-Information-Administration-System
Student-Information-Administration-System-Sb_M_D_Z-v1.0.0
v1.0.0(SpringBoot+Mybatis+Dubbo+Zookeeper,Sb_M_D_Z分支)
版本1.0.0(同步SSM主支v1.3.0):
- 项目根据不同的功能模块分为学生、教师、班级、专业、学院、年级、职称、用户8个服务模块
- 学生、教师、班级、专业、学院、年级、职称都是作为对外暴露的7个服务模块(分别暴露服务接口StudentService, TeacherService, ClassService, MajorService, CollegeService, GradeService, TitleService),基于dubbo暴露于不同的端口下,他们既是提供者也是消费者;用户服务模块,其中OtherService作为提供验证码发送等其他业务也隶属于用户服务的子服务,因此归于用户服务范畴,对外只暴露UserService接口。用户服务同时也是一个web项目,启动该服务的同时会启动springboot内置tomcat。
- common-api模块作为所有服务模块的公共api,提供entity对象、dto对象、工具类、自定义异常类等等。
- 该项目为多模块项目,根(父)模块中没有代码;common-api是其子项目,其他服务子模块StudentService等都引用common-api,因此也是根(父)模块的子模块。
Student-Information-Administration-System-v1.3.0
v1.3.0
版本1.3.0,提升安全性,解决部分安全隐患 :
- 前端layUi数据表格,增加“筛选列”、“打印”、“导出”上方工具条。
- 新增CsrfInterceptor拦截器,对修改请求进行CsrfToken的校验,有效防止CSRF攻击
- 对注册用户信息后端服务层,强化在aop方法中对输入身份属性的校验,对“管理员”字段进行过滤,并抛出异常,防止攻击者拦截请求JSON数据进行修改以获得非法权限;对修改用户信息后端控制层,强化在UserController对应方法中对原身份属性和修改后身份属性的校验,对“管理员”字段进行过滤,防止攻击者拦截请求JSON数据进行修改以获得非法权限。
- 感谢@Mydearbaby发现的邮箱验证码绕过安全漏洞,在服务端发送验证码时新增一个标志位false,仅当服务端校验正确后才将此标志置true,可以有效避免攻击者拦截请求JSON数据进行修改以绕开验证码。
Student-Information-Administration-System-Sb_M-v1.1.0
v1.1.0(SpringBoot+Mybatis,Sb_M分支)
版本1.1.0(同步SSM主支v1.3.0),提升安全性,解决部分安全隐患 :
- 前端layUi数据表格,增加“筛选列”、“打印”、“导出”上方工具条。
- 新增CsrfInterceptor拦截器,对修改请求进行CsrfToken的校验,有效防止CSRF攻击
- 对注册用户信息后端服务层,强化在aop方法中对输入身份属性的校验,对“管理员”字段进行过滤,并抛出异常,防止攻击者拦截请求JSON数据进行修改以获得非法权限;对修改用户信息后端控制层,强化在UserController对应方法中对原身份属性和修改后身份属性的校验,对“管理员”字段进行过滤,防止攻击者拦截请求JSON数据进行修改以获得非法权限。
- 感谢@Mydearbaby发现的邮箱验证码绕过安全漏洞,在服务端发送验证码时新增一个标志位false,仅当服务端校验正确后才将此标志置true,可以有效避免攻击者拦截请求JSON数据进行修改以绕开验证码。
Student-Information-Administration-System-Sb_M-v1.0.0
v1.0.0(SpringBoot+Mybatis,Sb_M分支)
该版本功能上与主支SSM项目的v1.2.0版本对应。
版本1.0.0,更新如下内容 :
- 这里前端我没有进行修改,还是使用jsp,接口与SSM项目相同,所以前端资源在webapp目录下;需要注意的是:springboot官方强调不推荐使用jsp,可以使用freemaker、thymeleaf代替,这些模板文件应该放在resources的static和templates目录下。
- layui和springboot整合时会出现layui一些图标无法显示问题,这里通过在pom.xml文件修改maven编译时对layui资源的拦截解决。
- springmvc拦截器的定义有原来的spring-mvc.xml中改为在config包下的配置类SpringmvcConfig完成;redis的配置等也同样改成springboot风格即配置类完成。
- 在原先的com.jzy.controller.OtherController中
"/error"
请求与springboot内部定义的出错请求相同,产生冲突,因而改成"/myError"
Student-Information-Administration-System-v1.2.0
v1.2.0
目前版本为v1.2.0,更新如下内容 :(之前版本参见百度网盘下载~)
- 修复了前端编辑添加弹窗在不同分辨率客户机上的显示大小问题
- 新增Redis技术,用以缓存用户名密码,用户错误登录次数限制,邮箱验证码等等
- 新增连续输错用户名密码超过一定次数后的限制时间
- 更改了邮箱验证码有效时间的实现方式,由服务端java实现改为redis过期时间实现
- 提升了服务端的安全性和新增异常处理机制,用aop实现入参的校验,对不合法的请求及其参数值用日志记录,并抛出异常
- 优化了util包等源代码的结构,增强了可拓展性
对Redis
和SpringAOP
不太熟的同学,下载v1.1.0
版本足够学习或完成课设了~
v1.1.0
Download: https://pan.baidu.com/s/1yHjrk7gAycHRFapU_Waf4g