Charles7c
8dbec9d1a3
fix: 修复合并冲突后的若干错误
...
1.完善 @Serial
2.完善 javax => jakarta
3.修复 canAccess() 使用错误
4.兼容 JustAuth Spring Boot Starter
5.CI 脚本更新 JDK 8 => 17
2023-11-05 10:41:26 +08:00
Charles7c
51e1cd9307
Merge remote-tracking branch 'origin/2.0.x' into dev
...
# Conflicts:
# README.md
# continew-admin-common/src/main/java/top/charles7c/cnadmin/common/base/BaseReq.java
# continew-admin-common/src/main/java/top/charles7c/cnadmin/common/base/BaseServiceImpl.java
# continew-admin-common/src/main/java/top/charles7c/cnadmin/common/handler/GlobalExceptionHandler.java
# continew-admin-common/src/main/java/top/charles7c/cnadmin/common/util/ExceptionUtils.java
# continew-admin-common/src/main/java/top/charles7c/cnadmin/common/util/helper/QueryHelper.java
# continew-admin-monitor/src/main/java/top/charles7c/cnadmin/monitor/interceptor/LogInterceptor.java
# continew-admin-system/src/main/java/top/charles7c/cnadmin/system/model/req/DeptReq.java
# continew-admin-system/src/main/java/top/charles7c/cnadmin/system/model/req/MenuReq.java
# continew-admin-system/src/main/java/top/charles7c/cnadmin/system/model/req/RoleReq.java
# continew-admin-system/src/main/java/top/charles7c/cnadmin/system/service/impl/DeptServiceImpl.java
# continew-admin-system/src/main/java/top/charles7c/cnadmin/system/service/impl/RoleServiceImpl.java
# continew-admin-system/src/main/java/top/charles7c/cnadmin/system/service/impl/UserServiceImpl.java
# continew-admin-ui/src/components/footer/index.vue
# continew-admin-webapi/src/main/java/top/charles7c/cnadmin/webapi/controller/common/CommonController.java
# continew-admin-webapi/src/main/java/top/charles7c/cnadmin/webapi/controller/system/UserCenterController.java
# continew-admin-webapi/src/main/resources/config/application-dev.yml
# continew-admin-webapi/src/main/resources/config/application-prod.yml
# pom.xml
2023-11-04 23:57:06 +08:00
Charles7c
87f90567db
refactor: 💥 调整后端请求、响应参数模型命名风格
...
XxxRequest => XxxReq
XxxVO => XxxResp
2023-11-04 17:19:00 +08:00
Charles7c
f5e8b0943c
style: 枚举接口 BaseEnum => IBaseEnum
2023-10-25 23:12:03 +08:00
Bull-BCLS
a0b1afc546
fix: 修复 RestControllerAdvice 统一返回导致 Knife4j 文档请求异常
2023-10-15 19:22:50 +08:00
Bull-BCLS
992a8fca17
fix: 新增全局响应结果处理器
...
实现ResponseBodyAdvice接口,可以将相同的处理逻辑抽取出来,避免了在多个Controller中重复编写代码,提高了代码的可维护性和可读性。同时,对返回结果进行统一格式化、异常处理等处理,使得返回结果更加规范、易于处理和阅读。
2023-10-12 23:12:41 +08:00
Charles7c
b3b6446433
refactor: 💥 分离 HTTP 状态码和业务状态码
...
1.传输正常的情况下无论业务是否有异常,HTTP 状态码始终为 200
2.防止非 HTTPS 情况下出现运营商劫持(例如:404)
2023-09-10 22:35:50 +08:00
Charles7c
a3082e72a9
style: 部分代码优化
...
1.格式优化:去除部分多余空行(较少代码段区分尽量不添加空行)、注释(代码尽量自解释)
2.完善部分 Swagger 注解信息
3.修复部分前后端警告
2023-09-10 18:01:44 +08:00
Charles7c
b874ca0782
refactor: 封装 Spring Boot 默认错误处理
...
1.排除路径配置放开 /error,以防止出现默认错误处理却显示为 401 的问题(例如:404 被识别为 401)
2.封装 Spring Boot 默认错误处理,统一响应结构
2023-09-10 11:17:47 +08:00
Charles7c
bb398d8101
refactor: 完善前端 axios 请求响应拦截器
2023-08-28 22:47:05 +08:00
Charles7c
90e1c64db6
refactor: 将全局异常处理器未知异常的异常类型从 Exception 调整为 Throwable
2023-08-15 23:36:26 +08:00
Charles7c
487fa82306
style: 优化 == 及 != 表达式格式
...
1.将 null 或常量值调整到符号左侧
2.将无特殊意义的方法判空写法改为表达式判断写法
2023-08-15 23:31:50 +08:00
Charles7c
38f52aaafa
style: 适配 Java 14 新特性
...
1.增强 switch(Java 12 预览特性 => Java 14 标准特性)
详情请参阅:https://docs.oracle.com/en/java/javase/14/language/switch-expressions.html
2.@Serial(类似于 @Override 的检查注解,用于检查序列化)
2023-03-31 23:00:57 +08:00
Charles7c
40e11a7a25
fix: 修复部分配置错误
2023-03-30 23:40:30 +08:00
Charles7c
0aafcc015c
Merge branch 'pr_2' into 2.0.x
...
# Conflicts:
# continew-admin-common/pom.xml
# continew-admin-common/src/main/java/top/charles7c/cnadmin/common/base/BaseController.java
# continew-admin-common/src/main/java/top/charles7c/cnadmin/common/util/helper/LoginHelper.java
# continew-admin-system/src/main/java/top/charles7c/cnadmin/system/model/request/DeptRequest.java
# continew-admin-system/src/main/java/top/charles7c/cnadmin/system/model/request/MenuRequest.java
# continew-admin-system/src/main/java/top/charles7c/cnadmin/system/model/request/RoleRequest.java
# continew-admin-system/src/main/java/top/charles7c/cnadmin/system/model/request/UpdateBasicInfoRequest.java
# continew-admin-system/src/main/java/top/charles7c/cnadmin/system/model/request/UserRequest.java
# pom.xml
2023-03-30 22:59:43 +08:00
dlj
dea160a7b2
chore: Spring Boot 2.7.8 => 3.0.3
...
1.Spring Boot 2.7.8 => 3.0.3
2.Knife4j 适配 Spring Boot 3.x
3.ServletUtil => JakartaServletUtil
4.javax.* => jakarta.*
2023-03-30 22:28:02 +08:00
Charles7c
c5b748fe52
完善:发版前配置梳理
2023-03-24 00:40:49 +08:00
Charles7c
6d3ba478e9
优化:优化校验工具类的使用及部分模板文本写法
...
1.优化校验工具类,支持传入 {} 模板文本
2.校验工具类增加 throwIf 重载方法,适合于 boolean 类型参数的情况
3.优化一些模板文本的写法
4.优化一些其他细节
2023-03-20 20:44:52 +08:00
Charles7c
44fa7266b6
优化:基于阿里巴巴 Java 开发手册(黄山版)优化日志配置
...
1.异常日志>日志规约>第2条:
【强制】日志文件至少保存 15 天,因为有些异常具备以“周”为频次发生的特点。对于当天日志,以“应用名.log”来保存,保存在/{统一目录}/{应用名}/logs/目录下,过往日志格式为:{logname}.log.{保存日期},日期格式:yyyy-MM-dd
正例:以 mppserver 应用为例,日志保存/home/admin/mppserver/logs/mppserver.log,历史日志名称为 mppserver.log.2021-11-28
2.异常日志>日志规约>第3条:
【强制】根据国家法律,网络运行状态、网络安全事件、个人敏感信息操作等相关记录,留存的日志不少于六个月,并且进行网络多机备份。
3.异常日志>日志规约>第9条:
【强制】异常信息应该包括两类信息:案发现场信息和异常堆栈信息。如果不处理,那么通过关键字throws 往上抛出。
正例:logger.error("inputParams: {} and errorMessage: {}", 各类参数或者对象 toString(), e.getMessage(), e);
4.异常日志>日志规约>第12条:
【推荐】可以使用 warn 日志级别来记录用户输入参数错误的情况,避免用户投诉时,无所适从。如非必要,请不要在此场景打出 error 级别,避免频繁报警。
说明:注意日志输出的级别,error 级别只记录系统逻辑出错、异常或者重要的错误信息。
2023-03-05 00:15:01 +08:00
Charles7c
4779d77265
优化:基于阿里巴巴 Java 开发手册(黄山版)优化方法排序及访问权限修饰符
...
1.编程规约>OOP规约>第20条:
【推荐】当一个类有多个构造方法,或者多个同名方法,这些方法应该按顺序放置在一起,便于阅读,
此条规则优先于下一条。
2.编程规约>OOP规约>第21条:
【推荐】类内方法定义的顺序依次是:公有方法或保护方法 > 私有方法 > getter / setter 方法。
说明:公有方法是类的调用者和维护者最关心的方法,首屏展示最好;保护方法虽然只是子类关心,也可能是“模板设
计模式”下的核心方法;而私有方法外部一般不需要特别关心,是一个黑盒实现;因为承载的信息价值较低,所有
Service 和 DAO 的 getter / setter 方法放在类体最后。
3.编程规约>OOP规约>第26条:
【推荐】类成员与方法访问控制从严:
1)如果不允许外部直接通过 new 来创建对象,那么构造方法必须是 private。
2)工具类不允许有 public 或 default 构造方法。
3)类非 static 成员变量并且与子类共享,必须是 protected。
4)类非 static 成员变量并且仅在本类使用,必须是 private。
5)类 static 成员变量如果仅在本类使用,必须是 private。
6)若是 static 成员变量,考虑是否为 final。
7)类成员方法只供类内部调用,必须是 private。
8)类成员方法只对继承类公开,那么限制为 protected。
说明:任何类、方法、参数、变量,严控访问范围。过于宽泛的访问范围,不利于模块解耦。思考:如果是一个
private 的方法,想删除就删除,可是一个 public 的 service 成员方法或成员变量,删除一下,不得手心冒点汗吗?
变量像自己的小孩,尽量在自己的视线内,变量作用域太大,无限制的到处跑,那么你会担心的。
2023-03-04 10:41:43 +08:00
Charles7c
94be1f9553
新增:新增功能权限适配及校验
...
1.后端 API 注解鉴权使用方式:@SaCheckPermission("system:user:add")
2.前端全局指令函数使用方式:v-permission="['system:user:add']"
3.前端权限判断函数使用方式:checkPermission(['system:user:add'])
2023-03-02 23:39:22 +08:00
Charles7c
d7851bc811
重构:初步封装后端 CRUD 公共组件(BaseController、BaseService、BaseServiceImpl)
2023-01-29 23:40:29 +08:00
Charles7c
3116fd3eae
新增:新增系统监控/在线用户功能,并优化部分注释规范
2023-01-21 14:15:00 +08:00
Charles7c
c57383abad
新增:新增系统监控/登录日志功能,优化日志表结构,并新增记录错误信息(非未知异常不记录异常详情,只记录错误信息)
2023-01-17 23:16:37 +08:00
Charles7c
f4ea2d44d6
新增:个人中心新增查询操作日志功能,优化日志表结构,并支持关闭记录内网 IP 操作
2023-01-16 00:18:53 +08:00
Charles7c
8b82557883
新增:新增修改邮箱功能,并优化部分以往代码(引入 spring-boot-starter-mail 用于发送邮件验证码)
2023-01-14 01:05:39 +08:00
Charles7c
5252c54c48
新增:新增上传头像 API,采用本地存储方式存储头像
2023-01-05 22:32:23 +08:00
Charles7c
727850933f
新增:新增系统监控模块(存放系统监控模块相关功能,例如:日志管理、服务监控等),新增操作日志引擎,记录 HTTP 请求信息
2022-12-25 13:16:15 +08:00
Charles7c
78e84e8941
完善:完善用户登录 API,优化部分包结构(引入 MyBatis Plus、多数据源、P6Spy、Liquibase 等依赖,详情可见 README 介绍)
2022-12-25 12:35:35 +08:00
Charles7c
00e2b44d0e
新增:新增用户登录和退出 API(引入 Sa-Token 依赖,详情可见 README 介绍)
2022-12-22 19:39:27 +08:00