问题:使用@ExceptionHandle注解需要在每一个controller代码里面都添加异常处理,会咋成代码冗余

解决方法:新建一个全局异常处理类,添加@ControllerAdvice注解即可

package com.bjsxt.exception;

import org.springframework.web.bind.annotation.ControllerAdvice;
import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.servlet.ModelAndView; /**
* Created by Administrator on 2019/2/14.
* 全局异常处理类
*/ @ControllerAdvice
public class GlobalException {
/**
* 处理ArithmeticException异常,该@ExceptionHandler注释的value属性可以是一个数组,
* 然后再根据注入的exception判断对不同异常分别进行不同的处理,也可以写多个controller,
* 对多个不同异常进行处理,这里采用第二种
* @param e 会将产生异常对象注入到方法中
* @return 该方法需要返回一个 ModelAndView:目的是可以让我们封装异常信息以及视图的指定
*/
@ExceptionHandler(value = {ArithmeticException.class})
public ModelAndView arithmeticExceptionHandler(Exception e){
ModelAndView mv=new ModelAndView("error_arithmetic");
mv.addObject("msg",e.toString());
return mv;
} /**
* 处理NullPointerException异常
* @param e 会将产生异常对象注入到方法中
* @return 该方法需要返回一个 ModelAndView:目的是可以让我们封装异常信息以及视图的指定
*/
@ExceptionHandler(value = {NullPointerException.class})
public ModelAndView nullPointerExceptionHandler(Exception e){
ModelAndView mv=new ModelAndView("error_nullPointer");
mv.addObject("msg",e.toString());
return mv;
}
}

最新文章

  1. Disruptor-NET和内存栅栏
  2. 关闭tomcat, 部署并启动tomcat的脚本
  3. C# 值类型和引用类型
  4. inotify+rsync目录实时同步
  5. 使用git提交github代码
  6. mahout安装配置
  7. 【剪枝】HDU 1010——tempter of the bone
  8. android如何用adb shell启动应用程序
  9. JavaScript插件——模态框
  10. overthewire朝花夕拾
  11. Notepad++ 使用探索
  12. Http 压测工具 wrk 基本使用
  13. Linux操作系统上要慎用的6个命令及防范方法
  14. Haproxy 配置 ACL 处理不同的 URL 请求
  15. Spring中@Autowired注解、@Resource注解的区别 (zz)
  16. HDU--Elevator(水题)
  17. 【刷题】BZOJ 1211 [HNOI2004]树的计数
  18. springboot pom 详解
  19. 模块—— 序列化模块、random模块、os模块 、 sys模块、hashlib模块、collections模块
  20. 帝国cms伪静态设置方法(收藏)

热门文章

  1. 安装、使用eclipse+CDT编译C++程序
  2. UGUI Image血条或者进度条效果
  3. tcp的半连接与完全连接队列(三)源码分析
  4. Murano Weekly Meeting 2015.09.15
  5. Spark生态系统
  6. git 基础教程
  7. WPF 正確理解ContentPresenter
  8. SQL——行转列,列转行
  9. 微信小程序全选多选效果
  10. Sharepoint2010新建一个用户的方法