1. 11 8月, 2023 1 次提交
  2. 10 8月, 2023 1 次提交
  3. 09 8月, 2023 1 次提交
  4. 08 8月, 2023 1 次提交
  5. 07 8月, 2023 1 次提交
  6. 06 8月, 2023 1 次提交
  7. 05 8月, 2023 1 次提交
  8. 07 5月, 2023 1 次提交
  9. 20 4月, 2023 1 次提交
  10. 13 4月, 2023 2 次提交
  11. 09 4月, 2023 1 次提交
    • 查尔斯-BUG万象集's avatar
      refactor: 优化 springdoc-openapi 对象型参数处理 · ae8d2947
      查尔斯-BUG万象集 提交于
      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 相关依赖并指定最新版本即可。
      ae8d2947
  12. 03 4月, 2023 1 次提交
  13. 31 3月, 2023 2 次提交
  14. 30 3月, 2023 2 次提交
  15. 29 3月, 2023 1 次提交
  16. 27 3月, 2023 2 次提交
  17. 26 3月, 2023 3 次提交
  18. 24 3月, 2023 1 次提交
  19. 23 3月, 2023 2 次提交
  20. 20 3月, 2023 2 次提交
  21. 19 3月, 2023 3 次提交
  22. 13 3月, 2023 1 次提交
  23. 11 3月, 2023 2 次提交
  24. 09 3月, 2023 1 次提交
  25. 07 3月, 2023 1 次提交
  26. 06 3月, 2023 1 次提交
    • 查尔斯-BUG万象集's avatar
      重构:🔥 基于阿里巴巴 Java 开发手册(黄山版)重构各表基本结构(简化列名) · 405c821e
      查尔斯-BUG万象集 提交于
      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;
      405c821e
  27. 05 3月, 2023 3 次提交
    • 查尔斯-BUG万象集's avatar
      优化:优化项目启动类命名 · 926aa06b
      查尔斯-BUG万象集 提交于
      926aa06b
    • 查尔斯-BUG万象集's avatar
      优化:优化成员变量相关注释及部分操作写法 · 39f26769
      查尔斯-BUG万象集 提交于
      成员变量有时候会被称为 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,简单粗暴一点。
      39f26769
    • 查尔斯-BUG万象集's avatar
      优化:基于阿里巴巴 Java 开发手册(黄山版)优化日志配置 · 44fa7266
      查尔斯-BUG万象集 提交于
      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 级别只记录系统逻辑出错、异常或者重要的错误信息。
      44fa7266