博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
springmvc全局异常处理
阅读量:6252 次
发布时间:2019-06-22

本文共 1743 字,大约阅读时间需要 5 分钟。

1.自定义异常类与自定义异常处理器

    1).自定义异常类

/***自定义异常类继承Exception*/public class SysException extends Exception {    private String message;    @Override    public String getMessage() {        return message;    }        public SysException(String message){        this.message=message;    }}

   2).自定义异常处理器

/** * 自定义异常处理器实现HandlerExceptionResolver接口 */public class SysExceptionResolve implements HandlerExceptionResolver {    @Override    public ModelAndView resolveException(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object o, Exception e) {        ModelAndView mv = new ModelAndView();        SysException sysException =null;        if(e instanceof SysException){              sysException= (SysException) e;        }else {            sysException = new SysException("服务器进入二次元了");        }        mv.addObject("message",sysException.getMessage());        mv.setViewName("error");        return mv;    }}

 

2.配置自定义异常处理器和编写error友好界面

      1). 在resources目录下的xml文件中配置bean

 

    2).编写error友好界面

<%@ page contentType="text/html;charset=UTF-8" language="java" isELIgnored="false" %>    异常界面    

${message}

 

3.测试结果

  测试结果的前台代码

<%@ page contentType="text/html;charset=UTF-8" language="java" isELIgnored="false" %>

Hello World!

Exception测试

测试结果的后台代码

@Controller@RequestMapping("/user")public class UserController {     @RequestMapping("/exception")    public String testException() throws SysException {         System.out.println("testException...");         try {             int a = 10/0;         } catch (Exception e) {             e.printStackTrace();             throw new SysException("查询数据出错了");         }         return "success";    }}

 

转载于:https://www.cnblogs.com/georgeJavaEE/p/9782708.html

你可能感兴趣的文章
centos7 nohup无法保持_CentOS 不间断会话(ssh关闭后如何保证程序继续运行)(nohup和screen)...
查看>>
显示图片java代码_用于显示下载或是显示图片的一段代码
查看>>
java scrip_js java scrip基本语法
查看>>
java 加上天数_java日期时间加上天数 | 学步园
查看>>
java 爬楼梯算法_9.1 爬楼梯
查看>>
java多态 动态绑定_Java JVM 多态(动态绑定)
查看>>
jpa 去重_JPA 查询Distinct Join条件示例
查看>>
mysql date 索引性能_【转】MYSQL数据库时间字段INT,TIMESTAMP,DATETIME性能效率比较
查看>>
java 加密解密算法_用JAVA设计一个简单的加密、解密算法,用该算法来实现对数据的加密、解密...
查看>>
java 窗口最小化_Java使窗口最小化为图标
查看>>
hessian java php_hessian在PHP中的使用
查看>>
虚幻4能用java吗_如果用虚幻四引擎开发我的世界而非java 它会比现在取得更好的成绩吗?...
查看>>
JAVA常见告警怎么解决_JAVA 线上故障排查全套路
查看>>
java协程和线程_Kotlin中的线程和协程之间的区别
查看>>
微信开放平台授权java_解决微信等开放平台授权域名只能配置一个的问题
查看>>
mysql 去除a标签_CSS去除手机移动端链接标签a点击所带的背景颜色样式
查看>>
datagrid排序 java_easyUI 自定义排序datagrid
查看>>
sine之舞 java_JAVA程序实例:Sine之舞的游戏之Java版
查看>>
java实现建权授权_JAVA项目实现授权 (一)-Go语言中文社区
查看>>
java h5服务器推送事件_服务器推送事件的详细介绍
查看>>