数据处理、异常处理、事务控制

数据处理

1. 【强制】Java中金额相关的对象类型必须使用BigDecimal,以防止计算的不精确、数据过大、过小的越界等。

2. 【强制】方法的入参和返回参数不要用Object类型。

3. 【强制】不能将返回结果集放到session中,避免服务器内存消耗而影响整体系统性能,除非设计要求。

4. 【强制】集合等类型如知道所装对象类型,请使用泛型,如:

List> list = new ArrayList>();

异常处理

1. 【强制】java里面如需抛异常,异常类型必须为ta3封装的AppException,如:

if(n != 1){

throw new AppException("修改失败");

}

2. 【强制】所有Service里面的异常全部抛出,内部实现不要try-catch,有特殊业务需求除外,如使用了try-catch且在catch里使用return语句后,需注意事务问题 ,如

try {

  //a操作

  //b操作

} catch(Exception e) {

  return "";

}

该操作没有将异常抛出,直接在catch里面return,如果b操作失败抛出异常,a操作是不会回滚的。

3. 【强制】action中捕获service中抛出的异常,并将错误信息处理成用户易于理解的方式展示到前台,不要直接将异常信息展示给用户,如:

try {

  //service方法

} catch(Exception e) {

  setMsg("保存失败,请联系管理员!",ERROR);

}

事务控制

1. 【强制】service事务配置范本

testService :spring beanID

transactionProxy:spring事务代理   

dataSource:数据源

  1. 带事务的service

  

  

  1. 不带事务的service

2. 【强制】在配置了多数据源的项目中,事务代理和数据源必须一一对应。

3. 【强制】同一个service内不同方法的事务传播行为必须一样,否则会造成事务失效的风险。

4. 【强制】查询类操作可以直接在action中进行,不需要事务控制。

你可能感兴趣的:(sql,数据库)