github编辑

DefaultRuntimeException

默认的运行时异常

支持 {} 占位符,

示例:

throw new DefaultRuntimeException("dataName:[{}],keys:[{}] can't be null/empty!", dataName, beans.keySet());

此外主要作用,是在异常message 中追加 cause exception信息,方便查看排查问题

示例1:

如下代码,使用原生RuntimeException

  
  public void testRuntimeException(){
      try{
          int i = 1 / 0;
      }catch (Exception e){
          throw new RuntimeException("", e);
      }
  }

抛出的异常情况在控制台是这样的:


java.lang.RuntimeException: 
    at com.feilong.core.DefaultRuntimeExceptionTest.testRuntimeException(DefaultRuntimeExceptionTest.java:63)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at java.lang.reflect.Method.invoke(Method.java:606)
Caused by: java.lang.ArithmeticException: / by zero
    at com.feilong.core.DefaultRuntimeExceptionTest.testRuntimeException(DefaultRuntimeExceptionTest.java:61)
    ... 23 more

而如果使用 DefaultRuntimeException

抛出来的信息是这样的 :

示例2:

如下代码

抛出的异常情况在控制台是这样的:

而如果使用 DefaultRuntimeException

抛出来的信息是这样的 :

最后更新于

这有帮助吗?