package com.test.util
@RestControllerAdvice(basePackages = "com.test.controller")
public class ApiWebExceptionHandler {
private final Logger log = LoggerFactory.getLogger(this.getClass());
@ExceptionHandler(value = {IllegalArgumentException.class})
@ResponseStatus(HttpStatus.OK)
public ApiResultMessage illegalArgumentException(IllegalArgumentException ex) {
return ApiResultMessage.error(Errors.ERROR_BAD_REQUEST, "系统异常");
}
//业务部分
@ExceptionHandler({ServiceException.class})
@ResponseStatus(HttpStatus.OK)
public ApiResultMessage exception(ServiceException e) {
String message = e.getMessage();
if (StringUtils.isEmpty(message)) {
message = e.getCause().toString();
}
log.info("全局异常信息 ServiceException={}", e);
return ApiResultMessage.error(e.getCode(), message);
}
@ExceptionHandler(value = {Exception.class})
@ResponseStatus(HttpStatus.OK)
public ResultMessage unknownException(Exception ex) {
log.error("系统异常", ex);
return ResultMessage.error(Errors.ERROR_SYSTEM_EXCEPTION, "系统异常");
}
}