wisdomisite-java/src/main/java/com/zhgd/exception/ExceptionHandlerAdvice.java

47 lines
1.6 KiB
Java
Raw Normal View History

2023-02-16 15:28:15 +08:00
package com.zhgd.exception;
import com.zhgd.jeecg.common.api.vo.Result;
import com.zhgd.jeecg.common.execption.OpenAlertException;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.ControllerAdvice;
import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.bind.annotation.ResponseBody;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
* @program: itbgpproject
* @description: 统一异常处理
* @author: Mr.Peng
* @create: 2020-08-05 14:53
**/
@ResponseBody
@Slf4j
@ControllerAdvice
public class ExceptionHandlerAdvice {
@ExceptionHandler(Exception.class)
@ResponseBody
public Result<Object> restError(HttpServletRequest request, HttpServletResponse response, Exception ex) {
Result<Object> result = new Result<>();
if (ex instanceof OpenAlertException) {
OpenAlertException e = (OpenAlertException) ex;
result.setCode(e.getCode());
result.setMessage(e.getMessage());
result.setSuccess(false);
} else if (ex instanceof CustomException) {
CustomException appException = (CustomException) ex;
result.setCode(403);
result.setMessage(appException.getMessage());
result.setSuccess(false);
} else {
result.error500(ex.getMessage() == null ? "操作中出现空指针!" : ex.getMessage());
ex.printStackTrace();
}
2023-04-28 09:34:13 +08:00
log.error("异常请求路径:" + request.getRequestURI() + "--" + result.getMessage());
log.error("errr", ex);
2023-02-16 15:28:15 +08:00
return result;
}
}