(二)Java后台开发规范

有的时候博客内容会有变动,首发博客是最新的,其他博客地址可能会未同步,认准https://blog.zysicyj.top

前言

提到Java开发规范,那么大家能想到的基本就是阿里巴巴Java开发手册 ,这个手册的内容很丰富,但是呢篇幅太长,很多人都记不住,那么怎么办呢?好在阿里巴巴提供了代码扫描插件,方便我们开发时发现问题并及时修改。

如何使用该插件?

参考这篇文章:【插件】Java开发规范配套Idea阿里巴巴代码扫描

手册内容

项目统一规约

  • 工具类统一使用Hutool,非必要不要自定义工具类

  • controller返回的每个实体需要新建一个Vo封装

  • controller接受的参数统一使用Param封装

  • Do类不允许添加额外字段

  • 业务之间传输使用Dto类封装

  • 跨模块,接口调用不允许直接传DO,需要封装成Dto

  • 单机事务必须加上@Transactional注解

  • 分布式事务必须加上@Seata注解

  • 统一使用Mybatis语法,不要使用JPA

  • ID统一使用Leaf雪花算法获取

  • 参数传递使用POJO传递,尽量不要使用Map

  • 方法参数超出屏幕宽度(一般3到5个)封装成对象接收

  • 方法命名规则

    • 删除:del***

    • 更新:update***

    • 添加:insert***

    • 单个查询:select***

    • 批量查询:list***

    • 分页:page***

    • 导出:export***

    • 导入:import***

    • 返回布尔值的方法:iz***

    • 校验:check***

    • 填充:fill***

  • 类名命名规则

    • 拦截器:***Handler

    • 过滤器:***Filter

    • 枚举:***Enum

    • 常量:***Constant

    • 监听器:***Listener

    • 配置类:***Config

  • 变量命名规则(全部驼峰)

    • 静态常量:大写,下划线分隔 例如: USER_NAME_GLOBAL

    • 局部常量:大写,下划线分隔 例如:USER_NAME

    • 全局变量:***Global 例如:userNameGlobal

    • List类型:***List 例如:userList

    • Map类型: ***Map 例如:userByIdMap

    • Set类型: ***Set 例如:userSet

    • 表示数量: ***Num 例如: userTotalNum

    • 表示判断: iz**** 例如:izLeader

建议阅读文章

如何使用校验

(二)声明和验证Bean约束 (三)声明和验证方法约束 (四)内插约束错误消息 (五)分组约束 (六)创建自定义约束

开发规范

最后更新于