今天测试全局异常捕获,随便试了几个异常,第一个是NullPointException,代码如下:

@RestControllerAdvice
public class ExceptionHandlerConfig {@ExceptionHandler(NullPointerException.class)public R nullPointExceptionHandler(NullPointerException e){System.out.println("异常信息:"+e.getCause().getMessage());return R.fail(500, "空指针异常");}@ExceptionHandler(Exception.class)public R allExceptionHandler(Exception e){System.out.println("出错:" + e.getCause().getMessage());return R.fail(500, "出现全局异常");}}

然后控制器方法抛一个NullPointException:

@GetMapping("test1")
@ApiOperation(value = "测试NullPointException捕获")
public R test1(){throw new NullPointerException();
}

咋一看没什么问题,用Swagger一测,居然没捕获到异常:

然后回忆下知识点,但觉得好像又没什么问题,上网查资料,什么情况下异常捕获注解失效,各种尝试,花了整整一个小时。

最后在看一篇博客时,我注意到NullPointException异常中没有异常信息提示,e.getCause()本就是空。因此其实是捕获到了异常,但e.getCause().getMessage()又出现了空指针异常。

其实控制台也提示了空指针异常处,也怪我没仔细看异常信息:

仅此记录一下。

关于捕获NullPointException的坑相关推荐

  1. 踩坑日记之Springfox+Kotlin lateinit引发NullPointException

    文章目录 相关技术栈 起因 分析 1. 报错位置 2. 接口定义 3. Kotlin编译成Java 4. springfox源码分析 1. 判断是否加了`@RequestBody`等参数 2. 包装` ...

  2. (转)面试必备技能:JDK动态代理给Spring事务埋下的坑!

    一.场景分析 最近做项目遇到了一个很奇怪的问题,大致的业务场景是这样的:我们首先设定两个事务,事务parent和事务child,在Controller里边同时调用这两个方法,示例代码如下: 1.场景A ...

  3. (四)Asp.net web api中的坑-【api的返回值】

    (四)Asp.net web api中的坑-[api的返回值] 原文:(四)Asp.net web api中的坑-[api的返回值] void无返回值 IHttpActionResult HttpRe ...

  4. Prometheus 如何做到“活学活用”,大牛总结的避坑指南

    点击上方蓝色"方志朋",选择"设为星标" 回复"666"获取独家整理的学习资料! 作者丨徐亚松 来源丨http://www.xuyasong ...

  5. Java日常开发的21个坑,你踩过几个?

    前言 最近看了极客时间的<Java业务开发常见错误100例>,再结合平时踩的一些代码坑,写写总结,希望对大家有帮助,感谢阅读~ 1. 六类典型空指针问题 包装类型的空指针问题 级联调用的空 ...

  6. 面试官问我,使用Dubbo有没有遇到一些坑?我笑了。

    作者:肥朝 来自:feichao_java 前言 17年的时候,因为一时冲动没把持住(当然最近也有粉丝叫我再冲动一把再更新一波),结合面试题写了一个系列的Dubbo源码解析.目前公众号大部分粉丝都是之 ...

  7. 2020《图像分割》从入坑到出坑指南

    本文经授权转载自机器之心(almosthuman2014),来源:medium,作者:Jakub Czakon,编译:小舟.Racoon.张倩,未经授权禁止二次转载与摘编. 本文长度为2400字,建议 ...

  8. 分享一篇关于使用阿里云消息队列中遇到的坑

    相信很多小伙伴都在开发中使用过消息队列,尤其是高并发的情况,一般可以在缓存中操作数据,然后通过消息异步处理业务逻辑,操作数据库等. 本人所在的公司使用了阿里云的消息队列和RabbitMQ,据说使用阿里 ...

  9. java事务不生效场景_springboot中使用@Transactional注解事物不生效的坑

    一:在springboot中使用事物遇到的坑 1.我们知道spring中的事物分为两种:一种是编程式事物,一种是声明式事物.顾名思义,编程式事物是指通过代码去实现事物管理,这里不做过多说明.另一种是声 ...

最新文章

  1. map 小模板~~~ 写的不好 继续添加
  2. 调整模型 与 提纯样本的关系过程有点类似EM算法过程,不知道这样理解是否是正确理解,固定A调B,B调到最优后,固定B再调A,循环往复,直至最优。
  3. Struts2 关于返回type=chain的用法.
  4. 贪心,POJ(2709)
  5. 计算机二级c语言题库缩印,计算机二级C语言上机题库(可缩印做考试小抄资料)...
  6. HTTP与HTTPS的安全性讨论
  7. list多选 android,Android ExpandableListView单选以及多选实现代码
  8. selenium自动化测试-1.selenium介绍及环境安装
  9. 【java学习之路】(javaWeb篇)008.VUE
  10. php文件流播放拖动,自定义实现可以播放暂停、进度拖拽、音量控制及全屏的H5播放器...
  11. 【气动学】基于matlab GUI外弹道仿真系统【含Matlab源码 1044期】
  12. 学习方法——TRIZ创新理论中的八大法则
  13. 【转】在数学的海洋中飘荡
  14. php 时辰,生辰八字时辰查询表对应的时间
  15. Linux之yum 命令详解
  16. JNLP的使用及碰到的一些问题
  17. Hotel booking -探索性数据分析(EDA)一(seaborn matplot pyecharts)
  18. 【Educoder作业】绘制炸弹轨迹 I——绘制一个坐标点
  19. 百度站长工具之 流量与关键词
  20. Image Pyramid

热门文章

  1. 颈痛、膝盖痛、腰痛…一秒缓解!年过40的人手一份~(收藏)
  2. php中颜色的标签,HTMLfont标签的color属性是什么?fontcolor的用法介绍(附颜色代码表)...
  3. C语言 题目 1700: 数据结构-自底向上的赫夫曼编码
  4. 刚刚看了火影忍者的125~~
  5. 2018计算机 第一次作业,计算机安全学-第四次实践作业-2018/4/17
  6. linux加密程序包,加密安装Kli Linux
  7. 推送怎么添加附件?公众号文章附件添加教程
  8. 监控摄像头卡顿_监控摄像机常见的画面卡顿问题,你们都知道哪些原因导致的吗?...
  9. Authorize---支付
  10. 基于 Python 和 Selenium 实现 CSDN 一键三连自动化