</pre>Spring MVC 学习笔记10 —— 实现简单的用户管理(4.3)用户登录--显示全局异常信息<p></p><p></p><h3 style="margin:0px; padding:0px; color:rgb(51,51,51); font-family:Arial; line-height:26px; text-indent:28px">第三部分:显示全局异常信息,而不是局部异常信息。</h3><p></p><p>        当有很多异常时,光是UserController这个控制器中的异常通过局部异常信息处理,已经不能满足需求。在其他控制器中(包括UserController)中的异常,都可以使用全局异常处理异常信息。</p><p>        1. 在myhello-Servelet.xml文件中,添加SimpleMappingExceptionResolver</p><p>        2. 注入<property>标签,通过<prop>标签列出全局中所有需要处理的异常。</p><p>        3. 然后注释掉局部异常处理code,在UserController控制器的代码中。</p><p>        4. 在error.jsp视图中,使用 ${exception.message } 显示全局异常处理结果。      </p><p></p><p>在myhello-servelet.xml文件中:</p><pre code_snippet_id="526777" snippet_file_name="blog_20141120_1_7394166" name="code" class="html"><?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:mvc="http://www.springframework.org/schema/mvc"
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="
http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd"> <!-- DispatcherServlet Context: defines this servlet's request-processing infrastructure --> <!-- Scans within the base package of the application for @Components to configure as beans -->
<!-- @Controller, @Service, @Configuration, etc. -->
<context:component-scan base-package="edu.bit.myhello" /> <!-- Enables the Spring MVC @Controller programming model -->
<mvc:annotation-driven /> <!-- Resolve logical view names to .jsp resources in the /WEB-INF/views directory -->
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/WEB-INF/views/" />
<property name="suffix" value=".jsp" />
</bean> <bean id = "exceptionResolver" class="org.springframework.web.servlet.handler.SimpleMappingExceptionResolver">
<property name="exceptionMappings">
<props>
<prop key = "edu.bit.model.UserException">error</prop> <!--key值的是你要映射哪个类 ,value=error直接写 -->
<!-- 这个的意思就是当在UserException中发现异常,就在error中处理,error中就要用exception对象
同样还可以:
<prop key = "java.lang.NullPointer"> exception </prop> 处理空指针异常,在exception.jsp视图中处理
-->
</props>
</property>
</bean> </beans>

加入的部分:

  	<bean id = "exceptionResolver" class="org.springframework.web.servlet.handler.SimpleMappingExceptionResolver">
<property name="exceptionMappings">
<props>
<prop key = "edu.bit.model.UserException">error</prop> <!--key值的是你要映射哪个类 ,value=error直接写 -->
<!-- 这个的意思就是当在UserException中发现异常,就在error中处理,error中就要用exception对象
同样还可以:
<prop key = "java.lang.NullPointer"> exception </prop> 处理空指针异常,在exception.jsp视图中处理
-->
</props>
</property>
</bean>

在UserController.java中,注释掉局部异常处理代码:

/*
* 显示局部的异常信息:仅仅只能处理这个控制器中的异常
* 写一个方法,HandlerException, 把 UserException传进来
*/
// @ExceptionHandler(value={UserException.class}) //用ExceptionHandler来映射,要处理的value是一个数组
// //要处理一个对象就这样写,可处理多个对象。
// public String handlerException(UserException ue, HttpServletRequest req){
// //1.把 UserException传进来;
// //2.不能用model来传值,因为不是RequestMapping,用HttpSeverletRequest req
// //把异常对象存进去:
// req.setAttribute("e", ue); //req 的 “e”参数,被set为 ue
// return "error";
// }

在error.jsp中,改为:

<h1>
<!-- ${e.message} -->
${exception.message }
</h1>

这样就完成了全局异常处理。

Spring MVC 学习笔记10 —— 实现简单的用户管理(4.3)用户登录显示全局异常信息的更多相关文章

  1. Spring MVC 学习笔记9 —— 实现简单的用户管理(4)用户登录显示局部异常信息

    Spring MVC 学习笔记9 -- 实现简单的用户管理(4.2)用户登录--显示局部异常信息 第二部分:显示局部异常信息,而不是500错误页 1. 写一个方法,把UserException传进来. ...

  2. Spring MVC 学习笔记8 —— 实现简单的用户管理(4)用户登录

    Spring MVC 学习笔记8 -- 实现简单的用户管理(4)用户登录 增删改查,login 1. login.jsp,写在外面,及跟WEB-INF同一级目录,如:ls Webcontent; &g ...

  3. Spring MVC 学习笔记12 —— SpringMVC+Hibernate开发(1)依赖包搭建

    Spring MVC 学习笔记12 -- SpringMVC+Hibernate开发(1)依赖包搭建 用Hibernate帮助建立SpringMVC与数据库之间的联系,通过配置DAO层,Service ...

  4. Spring MVC 学习笔记1 - First Helloworld by Eclipse【& - java web 开发Tips集锦】

    Spring MVC 学习笔记1 - First Helloworld by Eclipse reference:http://www.gontu.org 1. 下载 Spring freamwork ...

  5. Spring MVC 学习笔记一 HelloWorld

    Spring MVC 学习笔记一 HelloWorld Spring MVC 的使用可以按照以下步骤进行(使用Eclipse): 加入JAR包 在web.xml中配置DispatcherServlet ...

  6. Spring MVC 学习笔记11 —— 后端返回json格式数据

    Spring MVC 学习笔记11 -- 后端返回json格式数据 我们常常听说json数据,首先,什么是json数据,总结起来,有以下几点: 1. JSON的全称是"JavaScript ...

  7. Spring MVC 学习笔记2 - 利用Spring Tool Suite创建一个web 项目

    Spring MVC 学习笔记2 - 利用Spring Tool Suite创建一个web 项目 Spring Tool Suite 是一个带有全套的Spring相关支持功能的Eclipse插件包. ...

  8. Spring MVC学习笔记——完整的用户登录

    1.搭建环境的第一步是导包,把下面这些包都导入工程中 /media/common/工作/Ubuntu软件/SpringMVC_jar包整理/aop/media/common/工作/Ubuntu软件/S ...

  9. Spring MVC 学习笔记(整理)

    SpringMVC学习 1.概述 Spring MVC是一种基于Java实现MVC设计模式的请求驱动类型的轻量级Web框架,即使用了MVC架构模式的思想,将web层进行解耦,基于请求-响应模型帮助我们 ...

随机推荐

  1. sql日期操作

    日期格式化函数 ), ): :57AM ), ): ), ): ), ): ), ): ), ): ), ): ), ): , ), ): :: ), ): :::827AM ), ): ), ): ...

  2. SQL中varchar和nvarchar有什么区别

    varchar(n)长度为 n 个字节的可变长度且非 Unicode 的字符数据.n 必须是一个介于 1 和 8,000 之间的数值.存储大小为输入数据的字节的实际长度,而不是 n 个字节. nvar ...

  3. [1] 注解(Annotation)-- 深入理解Java:注解(Annotation)基本概念

    转载 http://www.cnblogs.com/peida/archive/2013/04/23/3036035.html 深入理解Java:注解(Annotation)基本概念 什么是注解(An ...

  4. Hiero中的Events机制

    The hiero.core.events module allows you to register method callbacks to respond to events sent by Hi ...

  5. Redis几种数据类型的应用场景(转)

    原文地址:https://blog.csdn.net/xiaoliuliu2050/article/details/73250708

  6. 黄聪:微信小程序(应用号)资源汇总整理(转)

    微信小应用资源汇总整理 开源项目 WeApp - 微信小程序版的微信 wechat-weapp-redux-todos - 微信小程序集成Redux实现的Todo list wechat-weapp- ...

  7. modbus tcp 入门详解

    Modbus tcp 格式说明 通讯机制 附C#测试工具用于学习,测试   前言: 之前的博客介绍了如何用C#来读写modbus tcp服务器的数据,文章:http://www.cnblogs.com ...

  8. 编译安装MySQL-5.7.13

    编译安装MySQL-5.7 cmake的重要特性之一是其独立于源码(out-of-source)的编译功能,即编译工作可以在另一个指定的目录中而非源码目录中进行,这可以保证源码目录不受任何一次编译的影 ...

  9. redis 安装配置 [转]

    Redis是目前众多NoSQL产品中非常有特点的一款,支持的数据类型和方法都非常丰富,做为一款具备持久化功能的软件,实际使中更多却是将其做为cache. 三思在个人的测试环境中安装使用了两三天,这期间 ...

  10. R语言 实验三 数据探索和预处理

    计算缺失值个数 计算缺失率   简单统计量:计算最值     箱形图分析   分布分析:画出频率直方图 统计量分析:对于连续属性值,求出均值以及标准差         缺失值处理:删除法     去除 ...