前台系统和后台系统中异常的设计

前台系统和后台系统中异常的设计

后台系统:

后台系统应将异常信息完整地、准确地返回给前台系统。

如:

facade层

LoanFacadeImpl.java

//申请贷款                         
try {
String loanRecordNo = loanBiz.applyLoan(applyLoanParamDTO);
return loanRecordNo;
} catch(Exception e) {
logger.error("申请贷款失败[applyLoanParamDTO={}, errorMsg={}]", applyLoanParamDTO, e.getMessage(), e);
throw new FortisRuntimeException("申请贷款失败");
}


biz层

//验证参数的合法性
if (applyLoanParamDTO.getApplyAmount().compareTo(BigDecimal.ZERO) <= 0) {

throw new FortisBizException("申请金额小于等于零[applyAmount=" + applyLoanParamDTO.getApplyAmount() + "]");
}
if (applyLoanParamDTO.getApplyPeriod().intValue() <= 0) {
throw new FortisBizException("申请期限小于等于零[applyPeriod=" + applyLoanParamDTO.getApplyPeriod() + "]");
}
Date today = DateUtils.dayBegin(new Date());
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
if (applyLoanParamDTO.getExpectRemitDate() != null && applyLoanParamDTO.getExpectRemitDate().before(today)) {
throw new FortisRuntimeException("申请贷款时期望放款日小于当前日期[expectRemitDate=" + dateFormat.format(applyLoanParamDTO.getExpectRemitDate()) + "]");
}


在biz层抛出的异常被facade层捕获之后需要重新抛出,目的是保留biz层抛出的异常信息,并把异常信息完整的抛出给前台系统。




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值