码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • Java开发手册提炼


    Java开发手册提炼

    • 一、编程规约
    • 二、异常日志
    • 三、单元测试
    • 四、安全规约
    • 五、MYSQL数据库
    • 六、工程结构
    • 七、设计规约

    一、编程规约

    1. 【强制】POJO 类中的任何布尔类型的变量,都不要加 is 前缀,否则部分框架解析会引起序列 化错误。

    2. 【推荐】如果模块、接口、类、方法使用了设计模式,在命名时需体现出具体模式。 说明:将设计模式体现在名字中,有利于阅读者快速理解架构设计理念。 正例: public class OrderFactory; public class LoginProxy; public class ResourceObserver;

    3. 接口和实现类的命名有两套规则: 1)【强制】对于 Service 和 DAO 类,基于 SOA 的理念,暴露出来的服务一定是接口,内部的实现类用 Impl 的后缀与接口区别。 正例:CacheServiceImpl 实现 CacheService 接口。
      2)【推荐】如果是形容能力的接口名称,取对应的形容词为接口名(通常是–able 的形容词)。 正例:AbstractTranslator 实现 Translatable 接口。

    4. 【参考】各层命名规约: A) Service/DAO 层方法命名规约
      1) 获取单个对象的方法用 get 做前缀。
      2) 获取多个对象的方法用 list 做前缀,复数结尾,如:listObjects。
      3) 获取统计值的方法用 count 做前缀。
      4) 插入的方法用 save/insert 做前缀。
      5) 删除的方法用 remove/delete 做前缀。
      6) 修改的方法用 update 做前缀。
      B) 领域模型命名规约
      1) 数据对象:xxxDO,xxx 即为数据表名。
      2) 数据传输对象:xxxDTO,xxx 为业务领域相关的名称
      3) 展示对象:xxxVO,xxx 一般为网页名称。
      4) POJO 是 DO/DTO/BO/VO 的统称,禁止命名成 xxxPOJO。

    5. 【强制】在 long 或者 Long 赋值时,数值后使用大写的 L,不能是小写的 l,小写容易跟数字 混淆,造成误解。 说明:Long a = 2l; 写的是数字的 21,还是 Long 型的 2。
      说明:Long a = 2l; 写的是数字的 21,还是 Long 型的 2。

    6. 【推荐】不要使用一个常量类维护所有常量,要按常量功能进行归类,分开维护。 说明:大而全的常量类,杂乱无章,使用查找功能才能定位到修改的常量,不利于理解,也不利于维护。 正例:缓存相关常量放在类 CacheConsts 下;系统配置相关常量放在类 ConfigConsts 下。

    二、异常日志

    三、单元测试

    四、安全规约

    五、MYSQL数据库

    六、工程结构

    七、设计规约

  • 相关阅读:
    数据结构 1.2 算法
    通过内网穿透快速搭建公网可访问的Spring Boot接口调试环境
    Matlab中 * 与 .* 的区别
    某汽车金融企业:搭建SDLC安全体系,打造智慧金融服务样本
    [附源码]计算机毕业设计JAVA影院售票系统
    每日一练:X加上100为完全平方数,再加上168任然为完全平方数
    react受控组件与非受控组件
    KubeEdge v1.15.0发布!新增5大特性
    OpenHarmony页面级UI状态存储:LocalStorage
    我们公司使用了6年的Spring Boot项目部署方案,打包 + 一键部署,稳的一批
  • 原文地址:https://blog.csdn.net/sinat_28809019/article/details/126135216
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号