欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Spring MVC 异常处理

程序员文章站 2022-04-17 11:29:52
...

Spring MVC 通过HandlerExcoptionResolver 处理程序异常,包括处理器异常、数据绑定异常以及处理器执行时发生的异常。

当发生异常时,Spring MVC 会调用 resolverExcoption()方法,并转到ModelAndView 对应的视图中,作为一个异常报告页面反馈给用户。

对于异常处理,我们一般分为局部异常处理和全局异常处理。

1、局部异常处理

局部异常处理,仅能处理指定的 Controller 中的异常,使用@ExceptionHandler 注解实现。

@ExceptionHandler(RuntimeException.class)
    public String handlerEecoption(RuntimeException e,HttpServletRequest req){
        req.setAttribute("e",e);
        return "error";
    }

 

2、全局异常处理

全局异常处理可以使用SimpleMapperExcoptionResolver 来实现,他将异常类名映射为视图名,即发生异常时使用对应的视图报告异常。

在 Spring MVC 配置文件中添加如下代码:

    <!-- 全局异常处理 -->
    <bean class="org.springframework.web.servlet.handler.SimpleMappingExceptionResolver">
        <property name="exceptionMappings">
            <props>
                <!--可以定义多个异常-->
                <prop key="java.lang.RuntimeException">error</prop>
            </props>
        </property>
    </bean>

 

相关标签: 异常处理