Skip to content

异常工具类-Assert

Assert

Assert断言工具类是直接从org.springframework.util.Assert中拷贝出来的,api的用法和定义和Spring Assert一模一样,在Spring Assert的使用经验可无缝迁移到该Assert

区别点在于对于断言的异常,不再像Spring一样抛出IllegalArgumentException,默认转为抛出自定义的ValidException,与全局异常紧密结合

同时提供了所有重载的接口,支持通过AbstractException子类class,构造异常实例,根据class抛出对应异常,目前支持推断所有自定义异常中,具有单字符串构造方法的异常实例

Assert解决的问题是经过前置参数过滤后,业务层面的校验,不得不包装统一返回体,和经过if else判断后进行返回的场景

或是结合全局异常后,每次抛出异常必须得写try catch代码的场景

目的在于进一步精简代码

基本使用

isTrue为例,判断条件是否成立,如果不成立则抛出异常,同时带有异常message

java
Assert.isTrue(0==1, "条件不满足");

支持推断AbstractException子类

java
Assert.isTrue(0==1, "条件不满足", BizNoStackException.class);