1. 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
  2. 31 3月, 2023 1 次提交
    • 查尔斯-BUG万象集's avatar
      fix: 修复邮箱健康检查报错问题并优化部分配置写法 · 5968f402
      查尔斯-BUG万象集 提交于
      关于邮箱健康检查的问题,作者一直忽略了这部分,倒不是诚心如此,而是作者没遇到过这个检查报错。原因是作者虽然没在本地单独调整配置文件,但作者在 IDEA 中给启动程序配置了 Program arguments:--spring.mail.username=xxx --spring.mail.password=xxx,所以实际配置也没问题,但各位小伙伴拉下代码后没注意到邮箱配置的话,那可就没那么友好了。所以作为一个非核心服务,干脆关闭邮箱的健康检查,如果哪个小伙伴真的有需要自行再打开就可以。
      5968f402
  3. 30 3月, 2023 2 次提交
  4. 27 3月, 2023 2 次提交
  5. 26 3月, 2023 1 次提交
  6. 13 3月, 2023 1 次提交
  7. 05 3月, 2023 1 次提交
    • 查尔斯-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
  8. 04 3月, 2023 1 次提交
    • 查尔斯-BUG万象集's avatar
      优化:基于阿里巴巴 Java 开发手册(黄山版)优化部分变量和方法命名 · 47fa1422
      查尔斯-BUG万象集 提交于
      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(根据用户名查询用户)
      47fa1422
  9. 26 2月, 2023 1 次提交
  10. 22 2月, 2023 1 次提交
  11. 29 1月, 2023 1 次提交
  12. 16 1月, 2023 1 次提交
  13. 14 1月, 2023 1 次提交
  14. 09 1月, 2023 1 次提交
  15. 05 1月, 2023 1 次提交
  16. 29 12月, 2022 1 次提交
  17. 25 12月, 2022 2 次提交
  18. 22 12月, 2022 2 次提交
  19. 11 12月, 2022 2 次提交
  20. 10 12月, 2022 1 次提交
  21. 09 12月, 2022 2 次提交