合理规范注释,前人编码注释清晰了,后人改动思路就明了了.还有就是命名的规范.
例如: if(null == userName){...} 这里.null 放在前面.总的来说.常量在前,变量在后.
如果if(){}else if(){}.....>=3 个if, 个人觉得,用switch case 比较好.
org.apache.commons.lang 这个工具包不错,里面有挺多工具类,特别是里面的StringUtils,用的比较多.java.util.Arrays,用的也挺多.还有org.apache.commons.collections.CollectionUtils
当字符串拼接,不要用 "+",如果对线程安全没什么要求,用StringBulid效率更高,线程安全用StringBuffer.
controller层 ,不要放有关业务的代码.业务代码放service层.
controller层是前台和后台交互的.单一职责.conroller层一个方法一个功能(如果是在controller层进行权限控制的话,能更好的进行权限控制).尽量清晰.不过service层可以提高代码复用率.
在controller层的Dto,里面的参数,不要放前台无用的参数进去.例如.ProjectPo对应一个ProjectDto.跟前台的交互DTO不要偷懒用ProjectDto.
service层,事务控制相关,如果仅涉及查询,@Transactional(readOnly = true),不要在Service上加全局事务控制,private 方法不要加事务.
生产代码禁止以System及Throwable.printStackTrace的方式输出日志信息,必须用Logger替代。注意log等级
注:这里我现在大致用的是spring+spring mvc+spring data jpa,前端用velocity页面模版
个人记录,欢迎指正交流.
持续更新......