编码规范

以下部分引自http://wiki.springside.org.cn/display/springside/Coding+Standards
这部分比较有借鉴意义,代码中一些约束检查和异常处理,自己做了些补充。


[b]基本规范[/b]
当面对不可知的调用者时,方法需要对输入参数进行校验,如不符合抛出IllegalArgumentException,建议使用Spring的Assert系列函数,应实现暂未实现的方法应抛出UnsupportedOperationException;
声明工具类为 public abstact class,确保只有static方法和变量的类不能被构造实例。
变量,参数和返回值定义尽量基于接口而不是具体实现类,如Map map = new HashMap();
代码中不能使用System.out.println(),e.printStackTrace(),必须使用logger打印信息。

[b]异常处理[/b]
重新抛出的异常必须保留原来的异常,即throw new RunTimeException("message", e);
在所有异常被捕获且没有重新抛出的地方必须写日志。
logger.error("message",e);
如果属于正常异常的空异常处理块必须注释说明原因,
写日志logger.info("message"),否则不允许空的catch块。

框架尽量捕获低级异常,并封装成高级异常重新抛出,隐藏低级异常的细节。(III)

以下引自j2EE design and development/chapter 4/Coding Standards
慢慢添上来。

以下是我自己写的;
[b]日志处理[/b]
结合异常处理。
Log4j配置和说明参见mannual文档.

系统采用Logg4j处理日志。
一般声明,可在基类中声明,子类中复用:
protected final Logger logger = Logger.getLogger(getClass());

如果static 方法需要写logger,声明:
private final static Logger logger = Logger.getLogger(***.class);
注意:不建议在static方法中写log,业务系统的log只处理业务系统的问题,static方法都是为业务逻辑服务的工具类、方法,在业务逻辑中处理异常信息,日志信息就可以了。

如果是需要持久化的类,声明logger;
protected final transient Logger logger = Logger.getLogger(getClass());
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值