java其它编码规范

java其它编码规范

浏览: 2919 2018年03月19日
1. 【强制】在使用正则表达式时,利用好其预编译功能,可以有效加快正则匹配速度。说明: 不要在方法体内定义: Pattern pattern = Pattern.compile(规则);2. 【强制】避免用 Apache Beanutils 进行属性的 copy。说明: Apache BeanU...
java代码注释规范

java代码注释规范

浏览: 2897 2018年03月17日
1. 【强制】类、类属性、类方法的注释必须使用 javadoc 规范,使用/**内容*/格式,不得使用//xxx 方式。说明: 在 IDE 编辑窗口中, javadoc 方式会提示相关注释,生成 javadoc 可以正确输出相应注释;在 IDE 中,工程调用方法时,不进入方法即可悬浮提示方法、参...
java控制语句规范

java控制语句规范

浏览: 2720 2018年03月16日
1. 【强制】在一个 switch 块内,每个 case 要么通过 break/return 来终止,要么注释说明程序将继续执行到哪一个 case 为止;在一个 switch 块内,都必须包含一个 default 语句并且放在最后,即使它什么代码也没有。2. 【强制】在 if/else/for/...
java web并发处理规范

java web并发处理规范

浏览: 3048 2018年03月15日
1. 【强制】获取单例对象要线程安全。在单例对象里面做操作也要保证线程安全。说明: 资源驱动类、工具类、单例工厂类都需要注意。2. 【强制】线程资源必须通过线程池提供,不允许在应用中自行显式创建线程。说明: 使用线程池的好处是减少在创建和销毁线程上所花的时间以及系统资源的开销,解决资源不足的问题...
java集合处理规范

java集合处理规范

浏览: 2764 2018年03月14日
1. 【强制】 Map/Set 的 key 为自定义对象时,必须重写 hashCode 和 equals。正例: String 重写了 hashCode 和 equals 方法,所以我们可以非常愉快地使用 String 对象作为 key 来使用。2. 【强制】 ArrayList 的 subLi...
ORM映射规范

ORM映射规范

浏览: 3072 2018年03月13日
1. 【强制】在表查询中,一律不要使用 * 作为查询的字段列表,需要哪些字段必须明确写明。说明: 1)增加查询分析器解析成本。 2)增减字段容易与 resultMap 配置不一致。2. 【强制】 POJO 类的 boolean 属性不能加 is,而数据库字段必须加 is_,要求在 resultM...
java项目服务器规范

java项目服务器规范

浏览: 2655 2018年03月12日
1. 【 推荐】 高并发服务器建议调小 TCP 协议的 time_wait 超时时间。说明: 操作系统默认 240 秒后,才会关闭处于 time_wait 状态的连接,在高并发访问下,服务器端会因为处于 time_wait 的连接数太多,可能无法建立新的连接,所以需要在服务器上调小此等待值。正例...
java面向对象oop编程规范

java面向对象oop编程规范

浏览: 2661 2018年03月11日
1. 【强制】避免通过一个类的对象引用访问此类的静态变量或静态方法,无谓增加编译器解析成本,直接用类名来访问即可。2. 【强制】所有的覆写方法,必须加@Override 注解。反例: getObject()与 get0bject()的问题。一个是字母的 O,一个是数字的 0,加@Override...
sql语句规范

sql语句规范

浏览: 3173 2018年03月10日
1. 【强制】不要使用 count(列名)或 count(常量)来替代 count(*), count(*)就是 SQL92 定义的标准统计行数的语法,跟数据库无关,跟 NULL 和非 NULL 无关。说明: count(*)会统计值为 NULL 的行,而 count(列名)不会统计此列为 NU...
java代码格式规范

java代码格式规范

浏览: 2624 2018年03月09日
1. 【强制】大括号的使用约定。如果是大括号内为空,则简洁地写成{}即可,不需要换行;如果是非空代码块则:1) 左大括号前不换行。2) 左大括号后换行。3) 右大括号前换行。4) 右大括号后还有 else 等代码则不换行;表示终止右大括号后必须换行。2. 【强制】 左括号和后一个字符之间不出现空...
java项目开发规范(2):什么是二方库以及二方库规范

java项目开发规范(2):什么是二方库以及二方库规范

浏览: 5219 2018年03月07日
一方库、二方库、三方库说明:一方库:本工程中的各模块的相互依赖二方库:公司内部的依赖库,一般指公司内部的其他项目发布的jar包三方库:公司之外的开源库, 比如apache、ibm、google等发布的依赖二方库规范1. 【强制】定义 GAV 遵从以下规则:1) GroupID 格式: com.{...
mysql索引使用归范

mysql索引使用归范

浏览: 3154 2018年03月05日
1. 【强制】业务上具有唯一特性的字段,即使是组合字段,也必须建成唯一索引。说明: 不要以为唯一索引影响了 insert 速度,这个速度损耗可以忽略,但提高查找速度是明显的;另外,即使在应用层做了非常完善的校验和控制,只要没有唯一索引,根据墨菲定律,必然有脏数据产生。2. 【强制】超过三个表禁止...
java程序日志规范

java程序日志规范

浏览: 3754 2018年02月28日
1. 【强制】应用中不可直接使用日志系统( Log4j、 Logback)中的 API,而应依赖使用日志框架SLF4J 中的 API,使用门面模式的日志框架,有利于维护和各个类的日志处理方式统一。import org.slf4j.Logger;import org.slf4j.LoggerFac...
java常量定义规范

java常量定义规范

浏览: 3348 2018年02月23日
1. 【强制】不允许出现任何魔法值(即未经定义的常量)直接出现在代码中。反例: String key="Id#taobao_"+tradeId;cache.put(key, value);2. 【强制】 long 或者 Long 初始赋值时,必须使用大写的 L,不能是小写的 l,小写容易跟数字 ...
web项目开发安全规范

web项目开发安全规范

浏览: 3894 2018年02月20日
1. 【强制】可被用户直接访问的功能必须进行权限控制校验。说明: 防止没有做权限控制就可随意访问、操作别人的数据,比如查看、修改别人的订单。2. 【强制】用户敏感数据禁止直接展示,必须对展示数据脱敏。说明: 支付宝中查看个人手机号码会显示成:158****9119,隐藏中间 4 位,防止隐私泄露...
java项目开发规范(1):应用分层规范

java项目开发规范(1):应用分层规范

浏览: 3479 2018年02月14日
1. 【推荐】图中默认上层依赖于下层,箭头关系表示可直接依赖,如:开放接口层可以依赖于Web 层,也可以直接依赖于 Service 层,依此类推:开放接口层:可直接封装 Service 接口暴露成 RPC 接口;通过 Web 封装成 http 接口;网关控制层等。 终端显示层:各个端的模板渲染...
数据库建表规范

数据库建表规范

浏览: 4195 2018年02月11日
1. 【强制】表达是与否概念的字段,必须使用 is_xxx 的方式命名,数据类型是 unsigned tinyint(1 表示是, 0 表示否),此规则同样适用于 odps 建表。说明: 任何字段如果为非负数,必须是 unsigned。2. 【强制】表名、字段名必须使用小写字母或数字;禁止出现数...
java异常处理规范

java异常处理规范

浏览: 3838 2018年02月09日
1. 【强制】不要捕获 Java 类库中定义的继承自 RuntimeException 的运行时异常类,如:IndexOutOfBoundsException / NullPointerException,这类异常由程序员预检查来规避,保证程序健壮性。正例: if(obj != null) {....
java命名规范

java命名规范

浏览: 3601 2018年02月08日
1. 【强制】所有编程相关命名均不能以下划线或美元符号开始,也不能以下划线或美元符号结束。反例: _name / __name / $Object / name_ / name$ / Object$2. 【强制】所有编程相关的命名严禁使用拼音与英文混合的方式,更不允许直接使用中文的方式。说明: ...