摘要:
1. 【强制】存储方案和底层数据结构的设计获得评审一致通过,并沉淀成为文档。 说明:有缺陷的底层数据结构容易导致系统风险上升,可扩展性下降,重构成本也会因历史数据迁移和系统平滑过渡而陡然增加,所以,存储方案和数据结构需要认真地进行设计和评审,生产环境提交执行后,需要进行 double check。 阅读全文
摘要:
1. POJO(Plain Ordinary Java Object): 在本规约中,POJO 专指只有 setter/getter/toString 的简单类,包括 DO/DTO/BO/VO 等 。2. DO(Data Object):阿里巴巴专指数据库表一一对应的 POJO 类。此对象与数据库表 阅读全文
摘要:
应用分成部分 1. 【推荐】根据业务架构实践,结合业界分层规范与流行技术框架分析 推荐分层结构如图所示默认上层依赖于下层,箭头关系表示可直接依赖,如:开放 API 层可以依赖于 Web 层(Controller 层),也可以直接依赖于 Service 层,依此类推: • 开放 API 层:可直接封装 阅读全文
摘要:
1. 【强制】隶属于用户个人的页面或者功能必须进行权限控制校验。 说明:防止没有做水平权限校验就可随意访问、修改、删除别人的数据,比如查看他人的私信内容。 2. 【强制】用户敏感数据禁止直接展示,必须对展示数据进行脱敏。 说明:中国大陆个人手机号码显示:139****1219,隐藏中间 4 位,防止 阅读全文
摘要:
1. 【强制】应用中不可直接使用日志系统(Log4j、Logback)中的 API,而应依赖使用日志框架(SLF4J、JCL--Jakarta Commons Logging)中的 API,使用门面模式的日志框架,有利于维护和各个类的日志处理方式统一。 2. 【强制】所有日志文件至少保存 15 天, 阅读全文
摘要:
1. 【强制】Java 类库中定义的可以通过预检查方式规避的 RuntimeException 异常不应该通过catch 的方式来处理,比如:NullPointerException,IndexOutOfBoundsException 等等。 说明:无法通过预检查的异常除外,比如,在解析字符串形式的 阅读全文
摘要:
1. 【强制】错误码的制定原则:快速溯源、沟通标准化。 说明: 错误码想得过于完美和复杂,就像康熙字典中的生僻字一样,用词似乎精准,但是字典不容易随身携带并且简单易懂。 正例:错误码回答的问题是谁的错?错在哪?1)错误码必须能够快速知晓错误来源,可快速判断是谁的问题。2)错误码必须能够进行清晰地比对 阅读全文