一种简单并且统一的处理异常的办法
之前做的一个项目中,有一些对异常处理的封装,如果抛出的异常是项目特定的异常,则直接抛出。如果不是,则进行一个封装。
现在的做法是这样的:
catch (Throwable t) {handleThrowable(t);}... public static void handleThrowable(Throwable t) throws InputValidationFault,InputLimitFault, SystemUnavailableFault{ if (t instanceof InputValidationFault) { throw (InputValidationFault) t; } else if (t instanceof InputLimitFault) { throw (InputLimitFault) t; } else if (t instanceof SystemUnavailableFault) { throw (SystemUnavailableFault) t; } else { throw new SystemUnavailableFault(t.getMessage(), ""); } }