`
qingyu11068
  • 浏览: 67716 次
文章分类
社区版块
存档分类
最新评论

SpringMVC(三)异常处理

阅读更多
一、在Controller内处理局部异常
 
     @ExceptionHandler(value={ArithmeticException.class})
	public ModelAndView handlExecution(Exception ex){
         ModelAndView  mView=new ModelAndView();
         mView.setViewName("error");
         mView.addObject("exception",ex);
         System.out.println("Controller内部异常处理");
         return mView;
	}
	@RequestMapping("/testExection")
	public String testExection(@RequestParam(value="id") Integer id){
		System.out.println(10/id);
		return "success";
	}

 


二、处理全局异常---------定义一个异常处理了(官网:www.fhadmin.org)
package com.neuedu.springmvc.execption;

import org.springframework.web.bind.annotation.ControllerAdvice;
import org.springframework.web.bind.annotation.ExceptionHandler;

/* 
* 项目名称:springmvc-03 
* @author:wzc
* @date 创建时间:2017年8月24日 下午3:31:09
* @Description:处理全局异常的类
* @parameter   (官网:www.fhadmin.org)
*   */
@ControllerAdvice
public class MyExcption {
	@ExceptionHandler(value={ArithmeticException.class})
	public String handlExecution(Exception ex){
		return "error";
	}
}

 


条件:
1.加上<mvc:annotation-driven>标签:
2.在当前Handler中定义由@ExceptionHandler注解修饰的方法,用于处理异常信息!
注意:
1.@ExceptionHandler方法修饰的入参中可以加入Exception类型的参数,该参数即对应发生的异常信息
2.@ExceptionHandler方法的入参中不能传入Map.若希望把异常信息传到页面上,需要使用ModelAndView作为方法的返回值。
3.@ExceptionHandler 注解定义的方法优先级问题:
例如发生的是NullPointerException,但是声明的异常有 RuntimeException 和 Exception,
此候会根据异常的最近 继承关系找到继承深度最浅的那个 @ExceptionHandler 注解方法,即标记了 RuntimeException 的方法
4.ExceptionHandlerMethodResolver 内部若找不 到@ExceptionHandler 注解的话,会找@ControllerAdvice 中的@ExceptionHandler 注解方法
 

三、在配置中配置异常处理
 
<!-- 配置异常处理 -->
<!-- 配置异常处理 -->
  <bean class="org.springframework.web.servlet.handler.SimpleMappingExceptionResolver">
  <property name="exceptionMappings">
  		<props>
  		  <!-- 处理的错误异常类型,以及跳转的页面 -->
  		   <prop key="java.lang.ArithmeticException">error</prop>
  		</props>
  </property>
  </bean>
分享到:
评论

相关推荐

    springmvc 异常处理示例

    springmvc异常处理的博文如下: http://blog.csdn.net/dlf123321/article/details/50756003

    SSM笔记-SpringMVC的异常处理

    SSM笔记-SpringMVC的异常处理,包含了ExceptionHandler注解、ResponseStatusExceptionResolver、DefaultHandlerExceptionResolver、SimpleMappingExceptionResolver的使用和试验

    SpringMVC 异常处理-2021-04-11.txt

    异常一层一层的向上抛出,但是开发人员肯定不想要用户看到代码出错,因此需要将异常屏蔽了,SpringMVC提供了异常处理的手段。

    springmvc异常处理demo.zip

    SpringMVC中异常处理机制,简单案例,里面有详细说明以及博客说明。

    springMVC统一异常处理.mp4

    本视频针对博客内容,讲解springMVC框架中的统一异常处理的知识点和实例,以及500错误和404错误异常处理上的区别,简单易懂,言简意赅。

    12SpringMVC异常处理.md

    12SpringMVC异常处理.md

    springmvc返回json的全局异常统一处理demo

    springmvc返回json的全局异常统一处理demo,有问题可以留言。

    springmvc 异常统一处理的三种方式详解.docx

    总结来说,Spring MVC提供的这三种异常处理机制各有优势,适用于不同场景。SimpleMappingExceptionResolver适合快速部署和简单异常处理;自定义HandlerExceptionResolver适用于高度定制的异常处理逻辑;而@...

    Maven+SpringMVC实现统一异常处理

    本篇将详细介绍如何利用Maven和SpringMVC来实现统一的异常处理机制。 首先,我们需要理解什么是统一异常处理。在Web应用中,异常处理通常是分散在各个控制器方法中的,这使得代码复用性差,且不易维护。统一异常...

    springMVC3学习(八)--全局的异常处理(源码)

    springMVC3学习(八)--全局的异常处理(源码) 文章地址:http://blog.csdn.net/itmyhome1990/article/details/26286435

    SpringMVC上传下载异常处理

    本文档主要介绍了SpringMVC的ModelAndView机制,使用SpringMVC实现文件上传,下载以及全局异常处理机制

    Beatles9527#StudyNotes#_6SpringMVC全局异常处理1

    SpringMVC处理全局异常在使用Shiro权限控制框架后,如果使用注解在Controller控制访问的角色,如果权限不足,就会抛出Authorization

    sunc-GitHub#springmvc#异常处理1

    1. SimpleMappingExceptionResolver类 1.配置文件springmvc.xml 1.在后端抛出异常对象,例如 2.SimpleMa

    SpringMVC 中的拦截器与异常处理

    在SpringMVC框架中,拦截器(Interceptor)和异常处理是两个重要的概念,它们对于构建健壮、可维护的Web应用程序至关重要。本文将深入探讨这两个主题,并解释它们如何协同工作以提升应用性能和用户体验。 首先,让...

    SpringMVC统一异常处理实例代码

    SpringMVC统一异常处理实例代码 本文主要介绍了SpringMVC统一异常处理实例代码,通过示例代码详细介绍了统一异常处理的方法,对大家的学习或者工作具有一定的参考学习价值。 在项目中,异常处理是一个非常重要的...

    spingmvc+mybatis+统一异常处理机制

    统一异常处理会区分前端是否ajax请求,自动返回json数据格式,要求开发人员在处理ajax请求时统一封装成一个对象返回,以符合代码统一规范。 此工程在idea环境编写,导入请自己新建工程手工复制代码导入。

    三. spring mvc 异常统一处理

    NULL 博文链接:https://gaojiewyh.iteye.com/blog/1297746

    springmvc如何进行异常处理

    Spring MVC 异常处理机制详解 Spring MVC 是当前最流行的 Java Web 应用程序框架之一,它提供了一个强大的异常处理机制,帮助开发者更好地处理应用程序中的异常。下面,我们将详细介绍 Spring MVC 中的异常处理机制...

    springmvc JSON解析全局异常处理

    通过aop拦截获取json请求数据,对数据进行处理判断,如果不合法则抛出异常,配置全局异常处理类,在异常处理类中直接将处理结果返回调用处,减少每次在方法中解析json数据然后在判断,减少代码冗余

Global site tag (gtag.js) - Google Analytics