正在显示
2 个修改的文件
包含
17 行增加
和
6 行删除
| @@ -8,10 +8,9 @@ package com.sunyo.wlpt.message.bus.service.exception; | @@ -8,10 +8,9 @@ package com.sunyo.wlpt.message.bus.service.exception; | ||
| 8 | 8 | ||
| 9 | public enum CustomExceptionType { | 9 | public enum CustomExceptionType { |
| 10 | MESSAGE_SUCCESS("10200", "消息发送成功"), | 10 | MESSAGE_SUCCESS("10200", "消息发送成功"), |
| 11 | + SERVER_EXCEPTION("10500", "服务器异常,发送消息失败!"), | ||
| 11 | 12 | ||
| 12 | BINDING_ERROR("10501", "配置信息,未进行绑定!"), | 13 | BINDING_ERROR("10501", "配置信息,未进行绑定!"), |
| 13 | - | ||
| 14 | - | ||
| 15 | SENDER_ERROR("10401", "报文格式错误,发送者不能为空!"), | 14 | SENDER_ERROR("10401", "报文格式错误,发送者不能为空!"), |
| 16 | CONTENT_ERROR("10402", "报文格式错误,消息内容不能为空!"), | 15 | CONTENT_ERROR("10402", "报文格式错误,消息内容不能为空!"), |
| 17 | SERVER_ERROR("10403", "报文格式错误,服务器名称不能为空!"), | 16 | SERVER_ERROR("10403", "报文格式错误,服务器名称不能为空!"), |
| @@ -27,8 +26,6 @@ public enum CustomExceptionType { | @@ -27,8 +26,6 @@ public enum CustomExceptionType { | ||
| 27 | EXCHANGE_NO_EXIST("20405", "报文数据错误,交换机不存在!"), | 26 | EXCHANGE_NO_EXIST("20405", "报文数据错误,交换机不存在!"), |
| 28 | ROUTING_KEY_NO_EXIST("20406", "报文数据错误,路由键不存在!"), | 27 | ROUTING_KEY_NO_EXIST("20406", "报文数据错误,路由键不存在!"), |
| 29 | 28 | ||
| 30 | - SERVER_EXCEPTION("50500", "服务器异常,发送消息失败!"), | ||
| 31 | - | ||
| 32 | CLIENT_ERROR("400", "客户端异常"), | 29 | CLIENT_ERROR("400", "客户端异常"), |
| 33 | SYSTEM_ERROR("500", "系统服务异常"), | 30 | SYSTEM_ERROR("500", "系统服务异常"), |
| 34 | OTHER_ERROR("999", "其他未知异常"); | 31 | OTHER_ERROR("999", "其他未知异常"); |
| 1 | package com.sunyo.wlpt.message.bus.service.exception; | 1 | package com.sunyo.wlpt.message.bus.service.exception; |
| 2 | 2 | ||
| 3 | +import com.sunyo.wlpt.message.bus.service.response.ResultJson; | ||
| 3 | import org.slf4j.Logger; | 4 | import org.slf4j.Logger; |
| 4 | import org.slf4j.LoggerFactory; | 5 | import org.slf4j.LoggerFactory; |
| 5 | -import org.springframework.web.bind.annotation.ControllerAdvice; | 6 | +import org.springframework.web.bind.annotation.ExceptionHandler; |
| 7 | +import org.springframework.web.bind.annotation.ResponseBody; | ||
| 6 | 8 | ||
| 7 | /** | 9 | /** |
| 8 | * @author 子诚 | 10 | * @author 子诚 |
| 9 | * Description:自定义全局异常处理类 | 11 | * Description:自定义全局异常处理类 |
| 10 | * 时间:2020/7/17 17:44 | 12 | * 时间:2020/7/17 17:44 |
| 11 | */ | 13 | */ |
| 12 | -@ControllerAdvice | 14 | +//@ControllerAdvice |
| 13 | public class GlobalExceptionHandler { | 15 | public class GlobalExceptionHandler { |
| 14 | private static final Logger logger = LoggerFactory.getLogger(GlobalExceptionHandler.class); | 16 | private static final Logger logger = LoggerFactory.getLogger(GlobalExceptionHandler.class); |
| 15 | 17 | ||
| 18 | + //处理程序员主动转换的自定义异常 | ||
| 19 | + @ExceptionHandler(CustomException.class) | ||
| 20 | + @ResponseBody | ||
| 21 | + public ResultJson customerException(CustomException e) { | ||
| 22 | + if(e.getCode() == CustomExceptionType.SYSTEM_ERROR.getCode()){ | ||
| 23 | + //400异常不需要持久化,将异常信息以友好的方式告知用户就可以 | ||
| 24 | + | ||
| 25 | + //TODO 将500异常信息持久化处理,方便运维人员处理 | ||
| 26 | + logger.error(""); | ||
| 27 | + } | ||
| 28 | + return ResultJson.error(e); | ||
| 29 | + } | ||
| 16 | } | 30 | } |
-
请 注册 或 登录 后发表评论