zoukankan      html  css  js  c++  java
  • SpringMVC异常处理

    将异常映射为状态码

    1. 定义一个异常类
    2. @ResponseStatus注解标注异常类。

    @ResponseStatus接受两个参数:

    • value, 表示状态码
    • reason, 表示原因

    当应用抛出@ResponseStatus注解标注的异常类时,SpringMVC会将异常映射为状态码

    手动处理异常——单控制器异常处理

    1. 如果某控制器抛出异常需要处理,则在此控制器里定义一个异常处理方法
    2. @ExceptionHandler注解标注异常处理方法

    @ExceptionHandler需要传入特定异常类作为参数。当控制器某个方法抛出异常,@ExceptionHandler方法将捕获并处理这个异常。

    这种处理方法的缺点是,它只能处理单一控制器抛出的异常。如果多个控制器抛出相同的异常,则必须在每个控制器中定义@ExceptionHandler方法才能处理异常

    手动处理异常——多控制器异常处理

    1. 定义控制器通知类(使用@ControllerAdvice注解表注 标注)
    2. 编写处理方法

    处理方法通过@ExceptionHandler@InitBinder@ModelAttribute注解标注

    @ControllerAdvice注解本身已经使用了@Component,因此@ControllerAdvice注解所标注的类将会自动被组件扫描获取到

  • 相关阅读:
    vijos 1066 弱弱的战壕 树状数组
    vijos 1057 盖房子 简单DP
    完全背包
    HDU 1203 和 HDU 2191
    dp 01背包,完全背包,多重背包 模板
    UVA11624 Fire!
    我们要学习的算法
    Find a way 两路广搜
    NYOJ 最小步数(简单深搜与广搜)
    HDU Dungeon Master广搜
  • 原文地址:https://www.cnblogs.com/weixia-blog/p/12148772.html
Copyright © 2011-2022 走看看