SpringBoot定义业务异常类:

下面这串代码定义了一个名为 BizException 的自定义异常类,该类扩展了 RuntimeException,并用于表示业务逻辑中的异常情况。

BizException 类的设计允许通过一个实现了 BaseExceptionInterface 接口的对象创建异常实例,从而使得异常可以包含业务逻辑相关的错误信息。这种设计模式使得异常处理更具灵活性和可维护性,特别是在复杂的业务逻辑中。

@Setter
@Getter
public class BizException extends RuntimeException{

    // 异常码
    private String errorCode;
    // 错误信息
    private String errorMessage;

    public BizException(BaseExceptionInterface baseExceptionInterface) {
        this.errorCode = baseExceptionInterface.getErrorCode();
        this.errorMessage = baseExceptionInterface.getErrorMessage();
    }
}
  • private String errorCode;: 声明了一个私有字符串变量 errorCode,用于存储错误码。错误码通常用于标识特定的错误类型。

  • private String errorMessage;: 声明了一个私有字符串变量 errorMessage,用于存储与错误相关的具体消息。

  • 构造 BizException函数,接受一个实现了 BaseExceptionInterface 接口的对象作为参数

  • 使用传入的baseExceptionInterface 对象来设置 errorCodeerrorMessage 属性

其他注意事项

接口设计: `BaseExceptionInterface` 应该是一个接口,包含 `getErrorCode` 和 `getErrorMessage` 方法,这些方法用于提供具体的错误信息和代码。

public interface BaseExceptionInterface {

    // 获取异常码
    String getErrorCode();

    // 获取异常信息
    String getErrorMessage();
}
  1. 异常处理: 由于 BizException 继承自 RuntimeException,它不强制要求在调用代码中捕获或声明。这意味着可以在程序的任何地方抛出它,并且可以灵活地进行异常处理。

  2. 可扩展性: 可以通过实现不同的 BaseExceptionInterface 来扩展这个异常类,以支持不同类型的业务异常。

示例

假设你有一个业务逻辑处理类,在某个条件下需要抛出 BizException,可以这样使用:

public void process() {
    if (someBusinessConditionFails) {
        throw new BizException(new SomeBaseExceptionImplementation());
    }
}

在这个例子中,SomeBaseExceptionImplementation 是实现了 BaseExceptionInterface 的具体类,它提供了错误码和错误信息。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值