/*** 全局异常处理器

*

*@author*/@RestControllerAdvicepublic classGlobalExceptionHandler

{private static final Logger log = LoggerFactory.getLogger(GlobalExceptionHandler.class);/*** 权限校验失败 如果请求为ajax返回json,普通请求跳转页面*/@ExceptionHandler(AuthorizationException.class)publicObject handleAuthorizationException(HttpServletRequest request, AuthorizationException e)

{

log.error(e.getMessage(), e);if(ServletUtils.isAjaxRequest(request))

{returnAjaxResult.error(PermissionUtils.getMsg(e.getMessage()));

}else{

ModelAndView modelAndView= newModelAndView();

modelAndView.setViewName("error/unauth");returnmodelAndView;

}

}/*** 请求方式不支持*/@ExceptionHandler({ HttpRequestMethodNotSupportedException.class})publicAjaxResult handleException(HttpRequestMethodNotSupportedException e)

{

log.error(e.getMessage(), e);return AjaxResult.error("不支持‘ " + e.getMethod() + "‘请求");

}/*** 拦截未知的运行时异常*/@ExceptionHandler(RuntimeException.class)publicAjaxResult notFount(RuntimeException e)

{

log.error("运行时异常:", e);return AjaxResult.error("运行时异常:" +e.getMessage());

}/*** 系统异常*/@ExceptionHandler(Exception.class)publicAjaxResult handleException(Exception e)

{

log.error(e.getMessage(), e);return AjaxResult.error("服务器错误,请联系管理员");

}/*** 业务异常*/@ExceptionHandler(BusinessException.class)publicObject businessException(HttpServletRequest request, BusinessException e)

{

log.error(e.getMessage(), e);if(ServletUtils.isAjaxRequest(request))

{returnAjaxResult.error(e.getMessage());

}else{

ModelAndView modelAndView= newModelAndView();

modelAndView.addObject("errorMessage", e.getMessage());

modelAndView.setViewName("error/business");returnmodelAndView;

}

}/*** 自定义验证异常*/@ExceptionHandler(BindException.class)publicAjaxResult validatedBindException(BindException e)

{

log.error(e.getMessage(), e);

String message= e.getAllErrors().get(0).getDefaultMessage();returnAjaxResult.error(message);

}}

c global 拦截 ajax,@RestControllerAdvice 全局拦截异常(示例代码)相关推荐

  1. ajax异步传输代码,Ajax同步与异步传输的示例代码

    这篇文章主要是对Ajax同步与异步传输的示例代码进行了介绍,需要的朋友可以过来参考下,希望对大家有所帮助 代码如下: //同步传输模式 function RequestByGet(nProductte ...

  2. ajax 上传文件实例,JavaScript使用Ajax上传文件的示例代码

    本文介绍了JavaScript使用Ajax上传文件的示例代码,分享给大家,具体如下: 实现文件的上传主要有两种方式: 使用form表单提交上传 html代码如下: 上传 此时的JavaScript代码 ...

  3. AJAX 入门培训 PPT 及示例代码

    AJAX 入门培训 PPT 及示例代码 PPT: http://www.blogjava.net/Files/beansoft/ajax_intro_1.2.ppt.rar 151KB 示例代码: a ...

  4. axios的实例拦截器和全局拦截器关系。

    axios的实例拦截器配置不会继承axios全局的拦截器,也就是说axios的instance的拦截器配置时单独服务的,不会被全局拦截器影响.

  5. 拦截ajax的请求,拦截ajax请求

    拦截ajax请求 内容精选 换一换 防护网站接入WAF后,您可以通过配置黑白名单规则或精准访问防护规则,使WAF仅允许指定IP访问防护网站,即WAF拦截除指定IP外的所有来源IP.例如,如果您需要放行 ...

  6. android拦截ajax,Android:拦截来自WebView的AJAX调用

    我想要一个HTML/javascript应用程序,在WebView中运行,以生成由AJAX代码处理的Java调用. 理想的是拦截调用(简单,只需使用shouldOverrideUrlLoading() ...

  7. ajax制作表格,Ajax实现表格实时编辑(示例代码)

    如果我们的对于一个表格中所有的数据都能在本页进行操作那该是多酷炫的一件事(用起来炒鸡爽)! 用Ajax就可以实现这个功能啦.废话不多说,下面贴出我写的demo吧哈哈.我用的TP框架(3.2)比较习惯啦 ...

  8. php后台登录页修改成ajax,使用php后台给自己做一个页面路由,配合ajax实现局部刷新。(示例代码)...

    今天就要放假了,把近来囤积的小玩意儿总结整理一下. 在请求一个html页面来嵌入到当前页会有一个问题,就是跟随请求过来的html他的样式表和脚本会失效.是因为文档加载的先后顺序等问题造成的.因此,加载 ...

  9. java异常代码_Java异常(示例代码)

    Java异常处理 程序发生异常的原因有很多,通常包含以下几类: 用户输入非法数据 要打开的文件不存在 网络通信连接中断,或者JVM内存溢出 异常有的是因为用户错误引起的,有的是程序错误引起的,还有一些 ...

最新文章

  1. SQL SERVER镜像切换
  2. python函数的高级用法
  3. 【NLP】CMU MILA 谷歌 | 三家巨头发布史上最干文本增强总结
  4. Android 尺寸 神图
  5. 博鳌直击 | 区块链在互联网金融中扮演怎样的角色?
  6. 以后出去找工作,只能说自己是产品策划了
  7. oracle add datafile ora-01900,一卡通2.2维护手册
  8. vim删除多行_vim文本编辑器
  9. 如何使用PL/SQL Developer查看和杀掉session
  10. 帝国php数据库备份,解决帝国cms帝国数据库备份王php5.3下500错误
  11. vsftpd pam_mysql_vsftpd+mysql+pam虚拟用户无法登录ftp服务器,请给位大侠帮忙!
  12. Android权限管理原理
  13. 2015-2016 Petrozavodsk Winter Training Camp, Moscow SU Trinity Contest
  14. psql: could not connect to server: No such file or directory
  15. 虾米音乐穷X事件程序员怎么样呢?
  16. 新手安装hadoop教程和个人遇到的错误及解决办法(错误:./hadoop-daemon.sh start journalnode用不了和WARNING: HADOOP_SECURE_DN_USER)
  17. 《大西洋月刊》2014-2020年电子版合集| The Atlantic
  18. 计算机不显示固态硬盘,新装的固态硬盘不显示怎么办?
  19. 浅谈微前端在滴滴车服中的应用实践
  20. 阿里云个人域名备案流程

热门文章

  1. 深入理解并行编程-分割和同步设计(一)
  2. Maven入门(一)(HelloMaven)
  3. dedecms织梦移站后替换数据库中文件路径命令
  4. Apache Tomcat7+MySQL5.6配置
  5. C#(asp.net)对字符串的操作公共类(StringUtil.cs)
  6. 第一代狗狗币教父联合社区挽救狗狗币,并在国内布道狗狗币三年之久
  7. BCH现阶段面临的一些问题以及可能的解决方向
  8. 比特币现金在奥地利成为主流
  9. 谢烟客---------Linux之文件安全上下文及特殊权限位
  10. 《linux 内核全然剖析》 mktime.c