【Spring学习笔记-MVC-15】Spring MVC之异常处理
1. 描述
2. 异常处理方式
3. 模拟异常抛出
项目结构:

Dao层:

Service层:

Controller层:

JSP界面

4.HandlerExceptionResolver方式
第1步:定义异常类MyException.java

package com.ll.Exception;
import java.io.IOException;
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 BaseController implements HandlerExceptionResolver {
@Override
public ModelAndView resolveException(HttpServletRequest request,
HttpServletResponse response, Object handler, Exception ex) {
// 添加自己的异常处理逻辑,如日志记录等
Map<String, Object> model = new HashMap<String, Object>();
model.put("ex", ex);
// 根据不同错误转向不同页面
if (ex instanceof SQLException) {
return new ModelAndView("error", model);
} else if (ex instanceof IOException) {
return new ModelAndView("error", model);
} else {
return new ModelAndView("error", model);
}
}
}
第2步:在applicationContext.xml配置

<bean id="exceptionHandler" class="com.ll.Exception.BaseController"/>
测试:



特点
第1步:定义异常处理基类

第2步:是controller层继承该基类

测试



特点
6. 优先级
附件列表
【Spring学习笔记-MVC-15】Spring MVC之异常处理的更多相关文章
- 【Spring学习笔记-MVC-16】Spring MVC之重定向-解决中文乱码
概述 spring MVC框架controller间跳转,需重定向,主要有如下三种: 不带参数跳转:形如:http://localhost:8080/SpringMVCTest/test/myRedi ...
- 【Spring学习笔记-MVC-14】Spring MVC对静态资源的访问
作者:ssslinppp 参考链接: http://www.cnblogs.com/luxh/archive/2013/03/14/2959207.html http://www.cnb ...
- 【Spring学习笔记-MVC-13】Spring MVC之文件上传
作者:ssslinppp 1. 摘要 Spring MVC为文件上传提供了最直接的支持,这种支持是通过即插即用的MultipartResolve实现的.Spring使用Jakarta Co ...
- 【Spring学习笔记-MVC-12】Spring MVC视图解析器之ResourceBundleViewResolver
场景 当我们设计程序界面的时候,中国人希望界面是中文,而美国人希望界面是英文. 我们当然希望后台代码不需改变,系统能够通过配置文件配置,来自己觉得是显示中文界面还是英文界面. 这是,Spring mv ...
- 【Spring学习笔记-MVC-10】Spring MVC之数据校验
作者:ssslinppp 1.准备 这里我们采用Hibernate-validator来进行验证,Hibernate-validator实现了JSR-303验证框架支持注解风格的验证.首先 ...
- Spring学习笔记 7.1 Spring MVC起步
7.1.1 跟踪Spring MVC的请求请求首先到达DispatcherServlet(DispatcherServlet是Spring MVC中的前端控制器):DispatcherServlet的 ...
- Spring学习笔记(四)--MVC概述
一. 飞机 最近马来西亚航空370号班机事故闹得沸沸扬扬,情节整的扑朔迷离,连我在钻研springMVC平和的心情都间接的受到了影响.正当我在想这个MVC的处理过程可以怎样得到更好的理解呢?灰机,灰机 ...
- 【Spring学习笔记-MVC-17】Spring MVC之拦截器
作者:ssslinppp 1. 拦截器简介及应用场景 2. 拦截器接口及拦截器适配器 3. 运行流程图 正常运行 中断流程 4. 程序实例 控制层: @Controller @Reques ...
- 【Spring学习笔记-MVC-7】Spring MVC模型对象-模型属性讲解
作者:ssslinppp 来自为知笔记(Wiz) 附件列表 处理模型数据.png
随机推荐
- ios下 animation-play-state不起作用
这个问题在 做H5音频播放的时候 困扰了好久,PC端一切正常,单单 移动端 出现各种杂乱的问题,也是醉了. 后来经过大量的检索,发现了一种方案很不错: 请看案例 原 创 完全兼容,各个设备,很不 ...
- Python3.5+SQL+Prometheus+Grafana报表/监控
参考资料: pymysql 单独获取表的栏位名称 pymysql返回数据为字典形式(key:value--列:值) 行列结合,作为prometheus_client的输出. 话不多说,直接上脚本. ...
- (转载)Hibernate的事务管理
Hibernate的事务管理 事务(Transaction)是工作中的基本逻辑单位,可以用于确保数据库能够被正确修改,避免数据只修改了一部分而导致数据不完整,或者在修改时受到用户干扰.作为一名软件设计 ...
- DevExpress v17.2新版亮点—.NET Reporting篇(二)
用户界面套包DevExpress v17.2日前终于正式发布,本站将以连载的形式为大家介绍各版本新增内容.本文将介绍了.NET Reporting v17.2 的新功能,快来下载试用新版本! 支持AS ...
- DevExpress XtraScheduler日程管理控件应用实例(2)-- 深入理解数据存储
DevExpress年终击穿底价,单套授权低至67折!查看详情>>> 在上篇随笔<DevExpress XtraScheduler日程管理控件应用实例(1)-- 基本使用> ...
- CentOS安装setup
如果在命令行运行 setup 提示乜有安装该命令,那么就需要先安装一下setup命令 执行:yum install setuptool #可以发现执行setup后不全,再安装一个用于系统服务管理yum ...
- css中的单位px,em和rem的区别
一.px: px就是像素,用px设置字体大小的时候会比较精确,但是有时候我们会使用不同屏幕尺寸去浏览网页.当页面相应的扩大或者缩小的时候,页面的字体大小就会出现过小或者过大.由于这种问题,就提出了使用 ...
- Linux Framebuffer save as picture
/********************************************************************************* * Linux Framebuff ...
- cglib 多重 代理示例-2
from: http://thinkinjava.cn/2018/10/%E4%BD%BF%E7%94%A8-Cglib-%E5%AE%9E%E7%8E%B0%E5%A4%9A%E9%87%8D%E ...
- test20180922 打铁的匠
题意 分析 法一:吉司机线段树 这是一个在线的\(O( n + q \cdot \log^2 n)\)做法. 考虑维护节点到根的权值前缀和cost,那么查询的时候区间减去子树根节点的cost就是价值. ...