Spring MVC 学习笔记10 —— 实现简单的用户管理(4.3)用户登录显示全局异常信息
</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)用户登录显示全局异常信息的更多相关文章
- Spring MVC 学习笔记9 —— 实现简单的用户管理(4)用户登录显示局部异常信息
Spring MVC 学习笔记9 -- 实现简单的用户管理(4.2)用户登录--显示局部异常信息 第二部分:显示局部异常信息,而不是500错误页 1. 写一个方法,把UserException传进来. ...
- Spring MVC 学习笔记8 —— 实现简单的用户管理(4)用户登录
Spring MVC 学习笔记8 -- 实现简单的用户管理(4)用户登录 增删改查,login 1. login.jsp,写在外面,及跟WEB-INF同一级目录,如:ls Webcontent; &g ...
- Spring MVC 学习笔记12 —— SpringMVC+Hibernate开发(1)依赖包搭建
Spring MVC 学习笔记12 -- SpringMVC+Hibernate开发(1)依赖包搭建 用Hibernate帮助建立SpringMVC与数据库之间的联系,通过配置DAO层,Service ...
- 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 ...
- Spring MVC 学习笔记一 HelloWorld
Spring MVC 学习笔记一 HelloWorld Spring MVC 的使用可以按照以下步骤进行(使用Eclipse): 加入JAR包 在web.xml中配置DispatcherServlet ...
- Spring MVC 学习笔记11 —— 后端返回json格式数据
Spring MVC 学习笔记11 -- 后端返回json格式数据 我们常常听说json数据,首先,什么是json数据,总结起来,有以下几点: 1. JSON的全称是"JavaScript ...
- Spring MVC 学习笔记2 - 利用Spring Tool Suite创建一个web 项目
Spring MVC 学习笔记2 - 利用Spring Tool Suite创建一个web 项目 Spring Tool Suite 是一个带有全套的Spring相关支持功能的Eclipse插件包. ...
- Spring MVC学习笔记——完整的用户登录
1.搭建环境的第一步是导包,把下面这些包都导入工程中 /media/common/工作/Ubuntu软件/SpringMVC_jar包整理/aop/media/common/工作/Ubuntu软件/S ...
- Spring MVC 学习笔记(整理)
SpringMVC学习 1.概述 Spring MVC是一种基于Java实现MVC设计模式的请求驱动类型的轻量级Web框架,即使用了MVC架构模式的思想,将web层进行解耦,基于请求-响应模型帮助我们 ...
随机推荐
- AI硬件 XPU
市场对人工智能的热情持续高涨,特别是硬件领域.人工智能将成为下一个大风口,首当其冲的就包括硬件, 在图像语音识别.无人驾驶等人工智能领域的运用层面,图形处理器 (GPU)正迅速扩大市场占比,而谷歌专门 ...
- XBOX360更新游戏封皮(FSD自制系统)
第一步,请记下上图左下角的IP地址第二步,打开电脑IE浏览器,输入“第二步”你记下的IP地址“回车”然后,就如下图所示了. 输入账号:f3http 密码:f3http 进入,然后你就进到你的360 F ...
- JavaWeb工程 目录结构***
以下是mavaen推荐的项目目录. ├── pom.xml └── src ├── main │ ├── java │ │ └── group │ │ ...
- Xshell里连接VirtualBox里的Centos7
关闭虚拟机 右键虚拟机->设置->网络,连接方式选择NAT,如下图: 3.在Xshell里连接即可.
- C++11--智能指针shared_ptr,weak_ptr,unique_ptr <memory>
共享指针 shared_ptr /*********** Shared_ptr ***********/ // 为什么要使用智能指针,直接使用裸指针经常会出现以下情况 // 1. 当指针的生命长于所指 ...
- C++进阶--静态多态
//############################################################################ /* * 多态 */ // 常见的动态多态 ...
- 统计apk或jar中方法数量
一.apk中方法数量 ./android-sdk-linux/build-tools/23.0.2/dexdump -f apk路径 | grep method_ids_size 二.jar中方法数 ...
- Hive数据类型及文本文件数据编码
本文参考Apache官网,更多内容请参考:https://cwiki.apache.org/confluence/display/Hive/LanguageManual+Types 1. 数值型 类型 ...
- centos7.4安装过程
开启CPU虚拟化 按到install CentOS7 按下tab 输入net.ifnames=0 biosdevname=0 先来一段文档v1 ============================ ...
- 大数据:Parquet文件存储格式【转】
一.Parquet的组成 Parquet仅仅是一种存储格式,它是语言.平台无关的,并且不需要和任何一种数据处理框架绑定,目前能够和Parquet适配的组件包括下面这些,可以看出基本上通常使用的查询引擎 ...