改写抛出异常的方法

简介: 改写抛出异常的方法

抛出异常的方法很好用,但是要配合错误码也就是api里的ErrorCode

image.gif

但是我们如果不需要错误码,想自己定义一个异常我们就要改写一下他的方法。

这是我写的一个判断方法:

@Override
    public void examine(List<TbSlsysXmtpfRespVO> examineReqVO) {
        // 生成提交批次号
        String submitBatchNo = NumberGenerate.generateNumber(prefix);
        // 发送到审批流程
        String processInstanceId = bpmUtil.submitToBpm(submitBatchNo, PROCESS_KEY);
        for (TbSlsysXmtpfRespVO tbSlsysXmtpfRespVO : examineReqVO) {
            //判断碳排放管理提交审核的每条数据是不是在算力系统里已经审核完成(判断条件为:设备编号、填报日期为同一天)
            if (tbSlsysSlxtInfoMapper.selectOne(TbSlsysSlxtInfoDO::getTtbSlsysSbbh,tbSlsysXmtpfRespVO.getTtbSlsysSbbh(),
                    TbSlsysSlxtInfoDO::getTtbTbDate,tbSlsysXmtpfRespVO.getTtbTbDate()) != null && tbSlsysSlxtInfoMapper.selectOne(TbSlsysSlxtInfoDO::getTtbSlsysSbbh,tbSlsysXmtpfRespVO.getTtbSlsysSbbh(),
                    TbSlsysSlxtInfoDO::getTtbTbDate,tbSlsysXmtpfRespVO.getTtbTbDate()).getStatus() == 3){
                TbSlsysXmtpfDO updateObj = BeanUtils.toBean(tbSlsysXmtpfRespVO, TbSlsysXmtpfDO.class);
                // 每条数据保存提交批次号
                updateObj.setSubBatchNo(submitBatchNo);
                // 每条数据保存审批流 processInstanceId
                updateObj.setProcessInstanceId(processInstanceId);
                updateObj.setStatus(2);
                tbSlsysXmtpfMapper.updateById(updateObj);
            }else{
                throw exception(tbSlsysXmtpfRespVO.getTtbSlsysSbbh()+"该设备未完成审核");
            }
        }
    }

image.gif

我判断这个条数据是不是在另一个表里已经审核完成,如果没有审核完成就抛出异常,只想拼接一个设备编号未完成审核的字符串,让我们ctrl点进去exception里面看看

image.gif

绿色的就是我新写的方法

抛出方法:

 

public static ServiceException exception(String msg) {
        return stringMsg(msg);
    }

image.gif

public static ServiceException stringMsg(String messagePattern, Object... params) {
        return exception0(GlobalErrorCodeConstants.BAD_REQUEST.getCode(), messagePattern, params);
    }

image.gif

只是略微改变了参数,不接收错误码的code和msg,只单纯传一个字符串抛给前端显示。

实现:

image.gif


目录
相关文章
|
Linux C++
63 C++ - 异常语法
63 C++ - 异常语法
37 0
|
4月前
|
前端开发 JavaScript
Promise 等待多个接口返回数据再执行操作
Promise 等待多个接口返回数据再执行操作
52 0
|
6月前
|
JSON 数据格式
这个错误是由于在解析JSON数据时出现了问题。你可以尝试使用`try-except`语句来捕获异常
这个错误是由于在解析JSON数据时出现了问题。你可以尝试使用`try-except`语句来捕获异常
66 2
|
6月前
|
Python
使用try-except-finally语句的例子。
使用try-except-finally语句的例子。
68 1
|
11月前
|
Java 数据库连接
异常语法详解
异常语法详解
41 1
|
人工智能 算法 IDE
你的代码太啰嗦了 | 这么多方法调用?
本篇通过 Kotlin 独有 约定(运算符重载) 来简化方法的调用。
92 0
你真的明白关于迭代器的方法、使用异常、并发修改异常介绍嘛?
关于迭代器的方法、使用异常、并发修改异常介绍的使用
132 0
你真的明白关于迭代器的方法、使用异常、并发修改异常介绍嘛?