Java日常写代码规范总结

1. 条件判断表达式比较长的情况下,可以封装成一个方法isXXX(),返回boolean,例如:

private boolean isGZFinance(Integer channelId) {
    return channelId == null || channelId <= 0 || channelId == AccidentChannel.CHANNEL_ID_101.getIndex().intValue();
}

2. 一个方法只做一件事,可以将依赖数据传参传入,方法内通常不建议对入参做修改,如果需要修改入参,需要在方法名上加以体现AndSetXXX,如果方法名称叫做计算总保费,那么理应只做计算操作,不应该有相应的查询(单一职责原则),那么出参应该是一个数值或保费的对象,而不应该返回其他信息

3. 一个项目里,可以将关于日期时间操作的抽出来作为公共部分,例如日期格式化等等

4. 定时任务一般要记录任务中成功多少,失败多少,用时间多少

int total = channelIdList.size();
int success = 0;
int fail = 0;
Stopwatch stopwatch = Stopwatch.createStarted();
//业务代码
stopwatch.stop();
log.info("XXXJob: XXX统计, total:{}, success:{}, fail:{}, time:{}", total, success, fail, stopwatch);

5. 使用事务的时候注意事务是否能生效:事务不生效

6. 代码分层:controller前端接口    --->    dubbo接口 -> service -> DAO数据操作

7. 延时队列:调用第三方接口要考虑超时的可能,选择异步的方法,延时队列超时也会启动重试机制

8. SQL: select * from table limit [offset,] rows

offset是偏移量,表示我们现在需要的数据是跳过多少行数据之后的,例如:limit 10, 20是指从11条数据开始,取20条数据

9. 查询列表分页接口通常都有个列表总数,这是要返回当前查询条件的总数

10. controller层返回给前端的实体类不要复用dubbo层的,目的:少依赖性,dubbo提供原始数据,controller转成需要的数据

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章