Java中有关异常处理的认识
Java中有关异常处理的认识
通常在Webservice侧中,有三层调用Dao层,Service层,WS层。
1.Dao层主要是处理数据的操作(Update,Delete,Select,Add).在Dao层是不处理异常的,一般是将异常抛向Service层。
代码示例如下:抛出DataAccessException 异常
public int addOperationLog(Map<String, Object> paramMap)throws DataAccessException{ return mDaoManager.update("addOperationLog", paramMap);}
public interface IUserApplySev{ /** * 添加操作日志服务. * @param paramMap 操纵日志信息参数 * @throws ApplicationException 服务调用异常信息 * @return 更新数据库影响行数 */ String addOperationLog(Map<String, Object> paramMap) throws ApplicationException;} /** * 添加操作日志服务. * @param paramMap 操纵日志信息参数 * @throws ApplicationException 服务调用异常信息 * @return 更新数据库影响行数 */public String addOperationLog(Map<String, Object> paramMap) throws ApplicationException{ try {return String.valueOf(mUserApplyDao.addOperationLog(paramMap)); } catch (DataAccessException e) {throw new ApplicationException("添加操作日志失败.", e); }}
public interface IUserApplyWs{ /** * 添加操作日志服务. * @param paramMap 操纵日志信息参数 * @throws ApplicationException 服务调用异常信息 * @return 更新数据库影响行数 */ String addOperationLog(Map<String, Object> paramMap) throws ApplicationException ;}public String addOperationLog(String aJsonStr) throws ApplicationException { if ((null == aJsonStr) || ("".equals(aJsonStr))) { throw new ApplicationException("[SupportWS]:addOperationLog input param(aJsonStr) is null."); } Map<String, Object> paramMap = JsonUtil.jsonStringToMap(aJsonStr); if (null == paramMap) { throw new ApplicationException("[SupportWS]:addOperationLog param paramMap is null."); } if ((null == paramMap.get(UserApplyConstants.USERID))|| ("".equals(UserApplyConstants.USERID))) { throw new ApplicationException("[SupportWS]:addOperationLog param USERID is null."); } if ((null == paramMap.get(UserApplyConstants.CREATEDATE))|| ("".equals(UserApplyConstants.CREATEDATE))) { throw new ApplicationException("[SupportWS]:addOperationLog param CREATEDATE is null."); } return mUserApplySevImpl.addOperationLog(paramMap);}