Charles7c
|
ec28705b6f
|
style: 优化常量命名风格,XxxConsts => XxxConstants
|
2023-11-22 23:06:50 +08:00 |
|
Charles7c
|
f4c0919eda
|
refactor: 优化部分使用类的引用路径
|
2023-11-21 22:22:07 +08:00 |
|
Charles7c
|
b47695603a
|
chore: 移除 XML 文件头部的协议信息
|
2023-11-19 18:21:13 +08:00 |
|
Charles7c
|
3e23acb3e2
|
build: 项目 group id top.charles7c => top.charles7c.continew
|
2023-11-17 21:56:50 +08:00 |
|
Charles7c
|
2f87310bc8
|
style: 优化部分代码格式
|
2023-11-05 21:26:12 +08:00 |
|
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
|
624f3b8391
|
fix: 修复账号登录不记录登录人的问题
|
2023-11-04 20:50:30 +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 |
|
Charles7c
|
f25de2d7f8
|
style: 优化校验相关方法命名
1.check 作为开头的方法名称,不设置返回值,对于 check 不通过的情况以异常的形式抛出(提升代码可读性,无需考虑是 check
通过了返回 true,还是 check 失败的情况下返回 true)
2.返回布尔值的方法,名称以 is 作为起始
|
2023-10-25 21:40:22 +08:00 |
|
Charles7c
|
51f552892c
|
style: 优化后端部分参数模型命名
模型命名规则遵循:名词+动作+后缀,例如:UserPasswordUpdateRequest
|
2023-10-25 21:27:39 +08:00 |
|
Charles7c
|
05cb609780
|
feat: 支持第三方账号登录
Just Auth(开箱即用的整合第三方登录的开源组件,脱离繁琐的第三方登录 SDK,让登录变得 So easy!)
|
2023-10-14 23:58:13 +08:00 |
|
Charles7c
|
3a176ac5ef
|
style: 优化部分代码格式及注释
|
2023-10-10 22:37:24 +08:00 |
|
Bull-BCLS
|
dcc87cb63b
|
feat: 新增网站配置修改功能
|
2023-09-22 21:51:09 +08:00 |
|
Charles7c
|
1f73aa732d
|
refactor: 优化枚举字典处理,增加颜色类型
1.重构 useDict 方法,同时支持枚举和查询字典,对应后端接口增加缓存处理
2.优化 BaseEnum 处理,增加 color 字段可用于设置对应枚举背景颜色(同字典背景颜色)
|
2023-09-17 18:03:14 +08:00 |
|
Charles7c
|
b3b6446433
|
refactor: 💥 分离 HTTP 状态码和业务状态码
1.传输正常的情况下无论业务是否有异常,HTTP 状态码始终为 200
2.防止非 HTTPS 情况下出现运营商劫持(例如:404)
|
2023-09-10 22:35:50 +08:00 |
|
Charles7c
|
566c9a1224
|
refactor: 优化分页查询登录日志列表接口实现
利用 module 字段直接可以查询登录相关记录
|
2023-09-09 22:19:01 +08:00 |
|
Charles7c
|
1722133ac4
|
perf: 对查询仪表盘访问趋势信息接口增加缓存处理
|
2023-09-09 22:12:18 +08:00 |
|
Charles7c
|
a1c20afb1b
|
feat: 完善仪表盘访问趋势区块内容
|
2023-09-09 21:39:15 +08:00 |
|
Charles7c
|
dc1691f019
|
feat: 完善仪表盘访客地域分布区块内容
|
2023-09-09 15:09:05 +08:00 |
|
Charles7c
|
83b2e2a7c0
|
feat: 完善仪表盘热门模块区块内容
1.完善仪表盘热门模块区块内容
2.sys_log 表增加 module 字段索引
3.优化总计区块图标
|
2023-09-09 11:28:44 +08:00 |
|
Charles7c
|
3440aa4faa
|
feat: 完善仪表盘总计区块内容
|
2023-09-09 00:20:50 +08:00 |
|
Charles7c
|
883dbecb1b
|
refactor: 优化部分代码
|
2023-09-08 21:17:30 +08:00 |
|
Charles7c
|
332bd6cd2a
|
docs: 修复接口文档中 LocalDateTime 类型数据的示例信息不显示的问题
|
2023-08-29 19:43:48 +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 |
|
Bull-BCLS
|
0ac0213628
|
docs: 完善系统监控模块相关接口文档信息
|
2023-08-15 22:43:28 +08:00 |
|
Charles7c
|
241a9cf85b
|
refactor: 使用 DatePattern 中的日期格式常量替代字符串常量中的日期格式
|
2023-08-10 23:38:20 +08:00 |
|
Charles7c
|
f4c6d83ff5
|
feat: 新增查询列映射信息列表接口
提取 QueryTypeEnum 枚举
|
2023-08-06 23:32:01 +08:00 |
|
Charles7c
|
3738fa4872
|
Merge branch 'dev' into 2.0.x
# Conflicts:
# continew-admin-common/src/main/java/top/charles7c/cnadmin/common/model/query/SortQuery.java
# continew-admin-monitor/src/main/java/top/charles7c/cnadmin/monitor/model/query/LoginLogQuery.java
# continew-admin-monitor/src/main/java/top/charles7c/cnadmin/monitor/model/query/OperationLogQuery.java
# continew-admin-monitor/src/main/java/top/charles7c/cnadmin/monitor/model/query/SystemLogQuery.java
# continew-admin-system/src/main/java/top/charles7c/cnadmin/auth/model/query/OnlineUserQuery.java
# continew-admin-system/src/main/java/top/charles7c/cnadmin/system/model/query/DeptQuery.java
# continew-admin-system/src/main/java/top/charles7c/cnadmin/system/model/query/MenuQuery.java
# continew-admin-system/src/main/java/top/charles7c/cnadmin/system/model/query/RoleQuery.java
# continew-admin-system/src/main/java/top/charles7c/cnadmin/system/model/query/UserQuery.java
|
2023-04-13 22:36:57 +08:00 |
|
Charles7c
|
b1c0ac1998
|
Merge branch '1.0.x' into dev
|
2023-04-13 22:32:11 +08:00 |
|
Charles7c
|
efbcb9b39d
|
style: 优化业务实现注释
|
2023-04-13 22:29:53 +08:00 |
|
Charles7c
|
ae8d294705
|
refactor: 优化 springdoc-openapi 对象型参数处理
1.使用 default-flat-param-object 全局设置对象型参数展示形式。此设置是在 springdoc-openapi v1.6.11 版本开始添加的新特性(详情请参阅:https://github.com/springdoc/springdoc-openapi/pull/1805),在此之前,只能在所有需要处理的对象型参数类上使用 @ParameterObject,工作量较大。
2.作者在使用上方这个配置时还遇到了一个 Bug,那就是只要在对象型参数前使用了注解,例如:@Validated PageQuery pageQuery,这个配置就不会生效了。此问题已在 GitHub 提交了相应 issue(详情请参阅:https://github.com/springdoc/springdoc-openapi/issues/2181),并且 springdoc-openapi 社区某个小伙伴儿已在当前最新发布的 v2.1.0 和 v1.7.0 中修复。
注意:由于当前使用的 Knife4j 版本其内部引入的 springdoc-openapi 相关依赖非最新版本,所以为了解决配置不生效问题,暂时将部分对象型参数移除了 @Validated 注解(除了 PageQuery,其他类当前也未实际添加校验,所以直接移除了)。当然如果不想移除的话,也可以从依赖上功夫,即移除 Knife4j 内引入的 springdoc-openapi 相关依赖,然后自行添加 springdoc-openapi 相关依赖并指定最新版本即可。
|
2023-04-09 01:13:23 +08:00 |
|
Charles7c
|
0f2f35d608
|
Merge branch 'dev' into 2.0.x
# Conflicts:
# README.md
|
2023-04-03 21:37:38 +08:00 |
|
Charles7c
|
e6f7429fa3
|
style: 使用常量优化部分魔法值
|
2023-03-31 23:31:30 +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
|
267ad9be13
|
优化:优化修改角色的代码逻辑
1.变更角色编码、功能权限或数据权限后,关联在线用户会自动下线
2.优化角色和菜单关联、角色和部门关联、用户和角色关联的业务代码(增加返回结果)
3.重构在线用户功能,抽取在线用户业务实现
|
2023-03-26 00:14:05 +08:00 |
|
Charles7c
|
6d3ba478e9
|
优化:优化校验工具类的使用及部分模板文本写法
1.优化校验工具类,支持传入 {} 模板文本
2.校验工具类增加 throwIf 重载方法,适合于 boolean 类型参数的情况
3.优化一些模板文本的写法
4.优化一些其他细节
|
2023-03-20 20:44:52 +08:00 |
|
Charles7c
|
9bbff7f22c
|
优化:优化日志引擎记录登录日志
|
2023-03-13 23:01:12 +08:00 |
|
Charles7c
|
405c821e2a
|
重构:🔥 基于阿里巴巴 Java 开发手册(黄山版)重构各表基本结构(简化列名)
1.MySQL数据库>建表规约>第9条:
【强制】表必备三字段:id,create_time,update_time。
说明:其中 id 必为主键,类型为 bigint unsigned、单表时自增、步长为 1。create_time,update_time 的类型均为datetime 类型,如果要记录时区信息,那么类型设置为 timestamp。
个人理解:简化列名的目的是为了后续能抽取更多公共能力
2.MySQL数据库>SQL语句>第10条:
【推荐】SQL 语句中表的别名前加 as,并且以 t1、t2、t3、...的顺序依次命名。
说明:
1)别名可以是表的简称,或者是依照表在 SQL 语句中出现的顺序,以 t1、t2、t3 的方式命名。
2)别名前加 as 使别名更容易识别。
正例:select t1.name from first_table as t1 , second_table as t2 where t1.id = t2.id;
|
2023-03-06 00:09:11 +08:00 |
|
Charles7c
|
39f267699a
|
优化:优化成员变量相关注释及部分操作写法
成员变量有时候会被称为 Field 有时候会被称为 Property,它们的区别如下:
1.Field:Field 是 Java 反射中描述类的属性信息的类。成员变量(Instance Variable)就是定义的字段(Field),例如 private String name;。Field 可以获取当前对象的成员变量的类型,对成员变量重新设值等。使用 Field 可以直接操作类的属性,不需要通过 getter 和 setter 方法,但是需要了解反射机制。
2.Property:Property 是成员变量的 getter 和 setter 方法。例如,public String getName() { return name; } 和 public void setName(String name) { this.name = name; } 分别是获取和设置 MyField 类中的实例变量 name 的 getter 和 setter 方法。使用 Property 可以在类的外部访问和修改类的属性,但是需要注意访问权限和数据类型的正确性。
综上所述,Field 和 Property 都可以用来表示 Java 类中的成员变量,选择哪种方式取决于具体的应用场景和需求。如果需要直接操作类的属性,可以使用 Field;如果需要在类的外部访问和修改类的属性,可以使用 Property。
个人理解:从 MyBatis 的映射角度来说,column 表示数据库表列/字段,property 表示 Java 对象属性/字段,所以此前在涉及到 MyBatis 操作时,尽可能多的用了 Property 而不是 Field。但除了 MyBatis 之外还有很多地方也需要用到成员变量,与其纠结 Field 还是 Property,那就用 Field,简单粗暴一点。
|
2023-03-05 12:59:10 +08:00 |
|
Charles7c
|
47fa1422bb
|
优化:基于阿里巴巴 Java 开发手册(黄山版)优化部分变量和方法命名
1.编程规约>命名风格>第14条:
【推荐】在常量与变量命名时,表示类型的名词放在词尾,以提升辨识度。
正例:startTime / workQueue / nameList / TERMINATED_THREAD_COUNT
反例:startedAt / QueueOfWork / listName / COUNT_TERMINATED_THREAD
2.编程规约>命名风格>第19条:
【参考】各层命名规约:
A)Service / DAO 层方法命名规约:
1)获取单个对象的方法用 get 做前缀。
2)获取多个对象的方法用 list 做前缀,复数结尾,如:listObjects
3)获取统计值的方法用 count 做前缀。
4)插入的方法用 save / insert 做前缀。
5)删除的方法用 remove / delete 做前缀。
6)修改的方法用 update 做前缀。
个人理解及应用 🔥:
1)在变量命名方面:
a)方法体内局部变量,命名时表示类型的名词放在词尾,以提升辨识度;
正例:nameList、nameArr。
b)方法声明上参数(局部变量),命名时尽量采用复数形式,以和方法名保持一致;
正例:List<String> listNameByIds(List<Long> ids);
c)成员变量,命名时尽量采用复数形式。
2)在方法命名方面:
a)CRUD 类方法可以简化命名;
正例:UserService:page、list、add、update、delete...;
说明:UserService 是围绕 User 为核心的业务接口,简化命名的方法也很容易理解操作的是什么。
b)其他方法,查询信息名词采用单数(与其纠结单数、复数,那就用单数,简单粗暴一点),以上述第2条要求为命名前缀。
正例:RoleService:listNameByIds(根据 ID 查询名称列表)
RoleService:listRoleCodeByUserId(根据用户 ID 查询角色编码列表)
UserRoleService:listRoleIdByUserId(根据用户 ID 查询角色 ID 列表)
UserService:getByUsername(根据用户名查询用户)
|
2023-03-04 23:03:33 +08:00 |
|
Charles7c
|
304615ea23
|
优化:优化部分 @Query 的使用
|
2023-03-04 16:41:31 +08:00 |
|
Charles7c
|
5f1f39d968
|
完善:完善部分类实现序列化接口
|
2023-03-04 16:38:44 +08:00 |
|
Charles7c
|
89a327920e
|
优化:基于阿里巴巴 Java 开发手册(黄山版)优化常量
1.编程规约>常量定义>第1条:
【强制】不允许任何魔法值(即未经预先定义的常量)直接出现在代码中。
|
2023-03-04 14:35:45 +08:00 |
|
Charles7c
|
c4d9bd3a75
|
优化:基于阿里巴巴 Java 开发手册(黄山版)优化 ThreadLocal 使用
1.编程规约>并发处理>第6条:
【强制】必须回收自定义的 ThreadLocal 变量记录的当前线程的值,尤其在线程池场景下,线程经常会
被复用,如果不清理自定义的 ThreadLocal 变量,可能会影响后续业务逻辑和造成内存泄露等问题。
尽量在代码中使用 try-finally 块进行回收。
|
2023-03-04 14:01:33 +08:00 |
|