课程6’30‘’左右,老师为了查看未知错误,把方法内部的throw给注释掉了
idea 提示 BusinessException is never thrown in the method
并且浏览器页面也不显示未知错误,而是 status=500
另外,老师这段代码我有点不理解,UserModel都是null了,还能调用setEncrptPassword()方法?????
我这样写了,控制台直接报java.lang.ClassCastException: java.lang.NullPointerException cannot be cast
我自己弄懂了,是因为我代码写错了
if (ex instanceof BusinessException)
我错误的写成了
if (ex instanceof Exception)
老师代码没问题,就是让UserModel==null,就是让它抛出java.lang.NullPointException,然后通过SpringBoot的注解
@ExceptionHandler(Exception.class)
进行拦截,然后自定义处理。
总结:
1、代码一定要跟着敲一遍甚至两遍三遍(我是跟着敲的第二遍,第一遍用了86h,惨不忍睹啊w(゚Д゚)w,这一遍感觉比上一遍顺利一些)
2、敲错不要怕,处理好一个Bug会理解的更加深刻
3、大家加油!