SpringMVC统一异常处理三种方法详解

来源:脚本之家  责任编辑:小易  

配置异拦截拦截错误跳指定页面用try形式错误直接return原先表单表单跳转参数消失能需要再传 -

这篇文章主要介绍了SpringMVC-统一异常处理三种方法详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

spring mvc常用的注解: 个介绍。 @Controller @Controller 负责注册一个bean 到spring 上下文中,bean 的ID 默认为 类名称开头字母小写,你也可以自己指定,如下 方法一: @Controller public class TestController {} 方法二: @Controller("tm

在 Spring MVC 应用的开发中,不管是对底层数据库操作,还是业务层或控制层操作,都会不可避免地遇到各种可预知的、不可预知的异常需要处理。

在配置文件中加入以下代码:

如果每个过程都单独处理异常,那么系统的代码耦合度高,工作量大且不好统一,以后维护的工作量也很大。

首先看Service在配置文件中有没有配置Dao层对象的property,其次Service层代码中有没有写Set方法。

如果能将所有类型的异常处理从各层中解耦出来,这样既保证了相关处理过程的功能单一,又实现了异常信息的统一处理和维护。

可腾讯手机管家帮助拦截,除了设计上的创新,比如界面清爽,功能齐全,速度更快,功能上的创新也尤为重要,它首创伪基站综合识别技术,可以识别伪基站骚扰电话并将它成功拦截,通过客户端本地识别基站模型,将骚扰电话的拦截率大大提高,为我们

幸运的是,Spring MVC 框架支持这样的实现。Spring MVC 统一异常处理有以下 3 种方式: 使用 Spring MVC 提供的简单异常处理器 SimpleMappingExceptionResolver。 实现 Spring 的异常处理接口 HandlerExceptionResolver 自定义自己的异常处理器。 使用 @ExceptionHandler 注解实现异常处理

经常看电视的人不难发现,临近暑假,电视上的《西游记》又开始播出了。《西游记》30年间播出3000多次,如此反复播出而观众依然爱看,堪称电视剧的一个“神话”。正是凭着严肃认真的创作态度,浪漫主义和现实主义相结合的艺术实践,加上电视艺术手段的运用,中国电视剧在上个世纪八九十年代,创造了一个个辉煌:古典名著改编成功者,不仅有“86版”《西游记》,还有“87版”《红楼梦》及《三国演义》《水浒传》等;《四世同堂》《上海屋檐下》《围城》等现代名著成功搬上荧屏;反映当代生活的《渴望》《编辑部的故事》《北京人在纽约》等,万人空巷、轰动一时……一个摄影师一台摄像机,拍了6年,播了6年,迄今已播放两千多次,足以申

本节主要根据这 3 种处理方式讲解 Spring MVC 应用的异常统一处理。

    这几天开始办美国签证,因为据说南美国家有了美签作保后,更容易出签一点。遂开始搜索美国的一些边边角角的信息,企图在不同的角度上多了解这个陌生的即将前往的国度(如果不被拒签的话)。  对于这个国家的认知更多是从好莱坞的电影,音乐,电子产品及不同网络上的只言片语。就如用不同颜色和形状的一砖一瓦拼凑起来的破烂房子,看像是那么回事,但总觉得不够立体和清晰。昨天偶然看到知乎一位大神在聊他眼里的美国,那在此和大伙儿一起分享这篇文章。@知乎达人每次都是对自己很不满意,她虽然不说但我有苦衷身为男人那里尽然不男人嘉尾三个e还有一个a还有数字一二零哦!我在Buffalo,Binghamton,NewYork

Spring MVC使用SimpleMappingExceptionResolver类异常处理

我来说说我自己吧,当初在权衡下,为了孩子更好的成长我选择了全职妈妈,每天我也是很忙,除了孩子,我也是尽量把自己填满来丰富自己第一,保持健康的身体每天除了照顾孩子吃喝玩乐,中午午睡的时间我会先陪她一起睡半个小时左右,在她还没睡醒的时候,我就开始跳操,健身等,因为我发现每次运动完出一身汗,人会很舒服,轻盈,在保持身材的同时还能调节自己的情绪,所以这也是我一直坚持的习惯。第二,多看书,学习我是个闲不下来的人,自己做了妈妈,我学会了烘焙,隔三岔五就给孩子做点饼干啊,蛋糕啊,小点心之类的,孩子吃的开心,我也高兴。还有关于小儿推拿的书。带着孩子一起学做手工等等第三,培养自己的爱好前面说了我做烘焙为了让孩子

<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring一beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd"> <!-- 使用扫描机制扫描包 --> <context:component-scan base-package="controller" /> <context:component-scan base-package="service" /> <context:component-scan base-package="dao" /> <!-- 配置视图解析器 --> <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver" id="internalResourceViewResolver"> <!--前缀 --> <property name="prefix" value="/WEB-INF/jsp/" /> <!-- 后缀 --> <property name="suffix" value=".jsp" /> </bean> <!--SimpleMappingExceptionResolver(异常类与 View 的对应关系) --> <bean class="org.springframework.web.servlet.handler.SimpleMappingExceptionResolver"> <!-- 定义默认的异常处理页面,当该异常类型注册时使用 --> <property name="defaultErrorView" value="error"></property> <!-- 定义异常处理页面用来获取异常信息的变量名,默认名为exception --> <property name="exceptionAttribute" value="ex"></property> <!-- 定义需要特殊处理的异常,用类名或完全路径名作为key,异常页名作为值 --> <property name="exceptionMappings"> <props> <prop key="exception.MyException">my-error</prop> <prop key="java.sql.SQLException">sql-error</prop> <!-- 在这里还可以继续扩展对不同异常类型的处理 --> </props> </property> </bean> </beans>

(互粉走起)赵本山不仅本人很红,赚了很多钱,还带红了一大批徒弟。今天就来说说赵本山几个有代表性的徒弟,看看他们现在过得怎么样。第一位:宋小宝赵本山很多徒弟出身贫寒。早年刷过盘子,住过一晚三块钱的小旅馆,想想就心酸。如今跟过去太不一样了,赵本山徒弟中,宋小宝自称第二,恐怕没人敢称第一。他天生带着幽默感,口才好,善于抓住机会,走红几年来人气一直上升。其实宋小宝可能会红得更早,据说《不差钱》里那个角色本是宋小宝的,但赵本山觉得小沈阳形象更适合。不管怎样,宋小宝后来红了。第二位:王小利王小利1969年出生,是赵本山徒弟中年龄比较大的。2006年,王小利参演《乡村爱情》,饰演刘能。以后很多人叫他“刘能”

Spring MVC使用HandlerExceptionResolver接口异常处理

package exception; import java.sql.SQLException; import java.util.HashMap; import java.util.Map; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.springframework.web.servlet.HandlerExceptionResolver; import org.springframework.web.servlet.ModelAndView; public class MyExceptionHandler implements HandlerExceptionResolver { @Override public ModelAndView resolveException(HttpServletRequest arg0, HttpServletResponse arg1, Object arg2, Exception arg3) { Map<String, Object> model = new HashMap<String, Object>(); model.put("ex", arg3); // 根据不同错误转向不同页面(统一处理),即异常与View的对应关系 if (arg3 instanceof MyException) { return new ModelAndView("my-error", model); } else if (arg3 instanceof SQLException) { return new ModelAndView("sql-error", model); } else { return new ModelAndView("error", model); } } }

<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring一beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd"> <!-- 使用扫描机制扫描包 --> <context:component-scan base-package="controller" /> <context:component-scan base-package="service" /> <context:component-scan base-package="dao" /> <!-- 配置视图解析器 --> <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver" id="internalResourceViewResolver"> <!--前缀 --> <property name="prefix" value="/WEB-INF/jsp/" /> <!-- 后缀 --> <property name="suffix" value=".jsp" /> </bean> <!--托管MyExceptionHandler--> <bean class="exception.MyExceptionHandler"/> </beans>

Spring MVC使用@ExceptionHandler注解异常处理

package controller; import java.sql.SQLException; import javax.servlet.http.HttpServletRequest; import org.springframework.web.bind.annotation.ExceptionHandler; import exception.MyException; public class BaseController { /** 基于@ExceptionHandler异常处理 */ @ExceptionHandler public String exception(HttpServletRequest request, Exception ex) { request.setAttribute("ex", ex); // 根据不同错误转向不同页面,即异常与view的对应关系 if (ex instanceof SQLException) { return "sql-error"; } else if (ex instanceof MyException) { return "my-error"; } else { return "error"; } } }

<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring一beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd"> <!-- 使用扫描机制扫描包 --> <context:component-scan base-package="controller" /> <context:component-scan base-package="service" /> <context:component-scan base-package="dao" /> <!-- 配置视图解析器 --> <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver" id="internalResourceViewResolver"> <!--前缀 --> <property name="prefix" value="/WEB-INF/jsp/" /> <!-- 后缀 --> <property name="suffix" value=".jsp" /> </bean> </beans>

扩展阅读,根据您访问的内容系统为您准备了以下内容,希望对您有帮助。

SpringMVC统一异常处理,报异常后不跳转至设置的错误页面

ajax访问不会返回你配置的错误页面,需要你自定义实现异常类(基于ajax请求),并且将异常通过response输出追问基于ajax请求的异常类如何定义?

spring mvc 异常如何处理

通过Spring mvc框架提供的SimpleMappingExceptionResolver来集中处理,该类可以捕获所有控制器抛出的异常,并将它映射到配置的视图中。

用法配置如下:

<bean id="exceptionResolver"

class="org.springframework.web.servlet.handler.SimpleMappingEx

ceptionResolver">

<property name="defaultErrorView">

<value>failure</value>

</property>

<property name="exceptionMappings">

<props>

<prop key="java.sql.SQLException">showDBError</prop>

<prop key="java.lang.RuntimeException">showError</prop>

</props>

</property>

</bean>

springmvc如何设置全局异常信息处理

自定义一个类,继承SimpleMappingExceptionResolver,

重载ModelAndView doResolveException

记录完毕日志,调用父类

return super.doResolveException(request, response, handler, ex);

SpringMVC的一个问题,应该如何解决?

springMVC提供的异常处理主要有以下几种方式。

几种处理方式为:

1、是直接实现自己的HandlerExceptionResolver。HandlerExceptionResolver是一个接口,springMVC本身已经对其有了一个自身的实现——DefaultExceptionResolver,该解析器只是对其中的一些比较典型的异常进行了拦截处理;

2、是使用注解的方式实现一个专门用于处理异常的Controller——ExceptionHandler。

3、是使用邻接矩阵存放图,邻接矩阵中位于行和列上面点的顺序可以自己定义;

4、是把图中点的名称按照点在邻接矩阵中行或者列上的顺序存放一个数组中;

5、是使用一个数组来标记各个点是否被访问过,数组的大小为图中点的数量;

  • 本文相关:
  • springmvc级联属性处理无法转换异常问题解决
  • springmvc统一异常处理实例代码
  • spring mvc异常处理机制示例详解
  • spring mvc controller返回值及异常的统一处理方法
  • springmvc异常处理知识点总结
  • springmvc如何进行异常处理
  • spring mvc中异常处理的三种方式
  • 基于springmvc的全局异常处理器介绍
  • 详解使用spring mvc统一异常处理实战
  • sql server 2008安装失败的解决办法 彻底卸载老版本!
  • sql server 2008 数据库优化常用脚本
  • 通过sqlserver 2008 操作 mysql的方法
  • sql server 2008中的apply运算符使用方法
  • sql server2008中删除重复记录的方法分享
  • sqlserver 2008 :error 40出现连接错误的解决方法
  • sql server 2008存储结构之gam、sgam介绍
  • 利用java实现des加密算法
  • sql server 2008 r2数据库镜像部署图文教程
  • sql server 2008 r2——查找最小nindex,nindex存在而nindex+1不存
  • SpringMVC统一异常处理,报异常后不跳转至设置的错...
  • spring mvc 异常如何处理
  • springmvc如何设置全局异常信息处理
  • springmvc利用HandlerExceptionResolver实现自定义...
  • SpringMVC的一个问题,应该如何解决?
  • springMVC或spring的异常信息,怎么返回给当前页面
  • springmvc的注解有哪些优点全局异常配置默认
  • springMVC如何拦截400错误
  • springmvc 非注解方式,controller运行到service调...
  • springmvc怎么在拦截器中拦截异常信息
  • 免责声明 - 关于我们 - 联系我们 - 广告联系 - 友情链接 - 帮助中心 - 频道导航
    Copyright © 2017 www.zgxue.com All Rights Reserved