早些时候,我们提到了代码工程的层,传统的MVC分层和当前流行的DDD模型。我们暴露于某些接口API或REST HTTP接口服务。各种异常,例如数据库异常,异常REDIS缓存,第三个服务接口呼叫异常等等。
如何处理这些异常?有三种常见方法:1。1.在入口控制器或立面层,写下代码捕获捕获的例外,封装了不同的错误2.通过截距AOP本身,异常拦截的截距截距的切割表面使用弹簧框架提供的异常处理方法。
本文主要介绍弹簧框架提供的异常处理方法
春季异常处理比较,主要分为三个方面
@Controller+@exceptionHandler是最高优先级,其次是@controlRadvice+@exceptionHandler,最后一个是最后一个handleRexceptionResolver。优先级的优先级越高,另一个选择不是通过捕获执行。
@controller+@exceptionhandler和@contrancterAdvice+@exceptionHandler:@Responsebody由Spring.handLereXecceptionResolver方法声明,申报返回值类型只能是modlandview。如果您需要返回JSON,XML等,则需要自己实施。
@controller+@exceptionhandler和@contrancterAdvice+@exceptionhandler缓存信息exceptionhandlerexceptionResolver的exceptionhandHandlerAdlerAdviceCache.handLereXceptionResolver solderver interface intface notface notface notface。