现在没权限返回的信息

控制台抛出的异常是这个 : 不允许访问,这是Spring Security跑出来的

我们在异常处理器里面打个断点看一下

重新测试,就跳转到了异常捕获类这里。

这是异常的类型

这里定义了Map,

在Map里面可以定义异常类型对应的错误代码

解决方法?在这里再定义类型的错误代码?

我们不准备在这里定义,ExceptionCatch是common工程的通用类,很多的子系统都用这个类

有些系统它就可以个性的来指定异常类型所对应的错误代码,比如说现在我们这个课程管理这个服务它用到了ExceptionCatch这个类。它完全可以自己个性化定义属于它的异常类型所对应的错误代码

简单来说就是不在通用类里面混乱定义,课程管理这个服务个性化定义。说白了就是把代码写在这个课程管理的服务里面,不要在common工程里面去写

自定义异常处理

定义一个exception的包

在exception里面定义自己的异常类型、CustomExceptionCatch

继承ExceptionCatch

ExceptionCatch

@ControllerAdvice使用控制器增强的注解

定义自己的静态块。builder对象是protected类型的,表示子类也能用


在课程里面加一个自己的错误代码。或者在CommonCode里面扩展一个也是可以的

里面有一个权限不足的代码

通过这种方式来自定义系统用的错误错误代码和异常类型

重启服务,再来测试

最新文章

  1. AVA正则表达式4种常用功能
  2. Git Pro - (2)分支
  3. SVN cleanup操作反复失败解决办法
  4. [改善Java代码]不要在finally块中处理返回值
  5. poj 1850 code(组合数学)
  6. mysql查询结果中文显示成了问号
  7. NSIS皮肤插件
  8. nodejs 后台服务启动
  9. 原生js二级联动
  10. 第四周小组作业:Wordcount优化
  11. T-SQL动态查询(2)——关键字查询
  12. 一个 Linux 上分析死锁的简单方法
  13. iOS 开发 nonatomic 和 atomic
  14. SQLServer之创建唯一非聚集索引
  15. 浅谈前端nuxt(ssr)
  16. 【PyQt5-Qt Designer】QSlider滑块
  17. Solr系列三:solr索引详解(Schema介绍、字段定义详解、Schema API 介绍)
  18. 《Linux总线、设备与驱动》USB设备发现机制
  19. RealVNC
  20. I2S音频总线学习(二)I2S总线协议

热门文章

  1. 集合(python)
  2. MaxPlus WStr Python 中的字符串传递给 MaxPlus
  3. P1005 矩阵取数游戏[区间dp]
  4. .NET Core SignalR 和 .NET SignalR 区别
  5. 大数据之路week07--day01(HDFS学习,Java代码操作HDFS,将HDFS文件内容存入到Mysql)
  6. Android测试-monkey
  7. vb开发最全教程
  8. vue jqury如何获取元素中的属性
  9. bootstrap最简单的导航条
  10. Define Interfaces and Share Class Members through Mixins in Dart