All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.yes.tools.handle.GlobalBizExceptionHandler Maven / Gradle / Ivy

There is a newer version: 2.0.6
Show newest version
//package org.yes.tools.handle;
//
//import com.alibaba.csp.sentinel.Tracer;
//import lombok.extern.slf4j.Slf4j;
//import org.springframework.core.annotation.Order;
//import org.springframework.http.HttpStatus;
//import org.springframework.util.Assert;
//import org.springframework.validation.BindException;
//import org.springframework.validation.FieldError;
//import org.springframework.web.bind.MethodArgumentNotValidException;
//import org.springframework.web.bind.annotation.ExceptionHandler;
//import org.springframework.web.bind.annotation.ResponseStatus;
//import org.springframework.web.bind.annotation.RestControllerAdvice;
//
//import java.util.HashMap;
//import java.util.List;
//import java.util.Map;
//
///**
// * 

// * 全局异常处理器结合sentinel 全局异常处理器不能作用在 oauth server https://gitee.com/log4j/pig/issues/I1M2TJ // *

// * // * @author Co. // * @date 2023/10/24 10:24 // */ //@Slf4j //@Order(10000) //@RestControllerAdvice //public class GlobalBizExceptionHandler { // // /** // * 全局异常. // * // * @param e the e // * @return R // */ // @ExceptionHandler(Exception.class) // @ResponseStatus(HttpStatus.INTERNAL_SERVER_ERROR) // public Map handleGlobalException(Exception e) { // log.error("全局异常信息 ex={}", e.getMessage(), e); // Map map = new HashMap(); // // 业务异常交由 sentinel 记录 // Tracer.trace(e); // map.put("code", HttpStatus.INTERNAL_SERVER_ERROR.value()); // map.put("message", e.getLocalizedMessage()); // map.put("data", null); // return map; // } // // /** // * 处理RuntimeException // * // * @param e // * @return // */ // @ExceptionHandler(RuntimeException.class) // @ResponseStatus(HttpStatus.INTERNAL_SERVER_ERROR) // public Map handleRuntimeException(RuntimeException e) { // log.error("RuntimeException信息 ex={}", e.getMessage(), e); // Map map = new HashMap(); // // 业务异常交由 sentinel 记录 // Tracer.trace(e); // map.put("code", HttpStatus.INTERNAL_SERVER_ERROR.value()); // map.put("message", e.getLocalizedMessage()); // map.put("data", null); // return map; // } // // @ExceptionHandler(RuntimeException.class) // @ResponseStatus(HttpStatus.INTERNAL_SERVER_ERROR) // public Map handleYesException(RuntimeException e) { // log.error("RuntimeException信息 ex={}", e.getMessage(), e); // Map map = new HashMap(); // // 业务异常交由 sentinel 记录 // Tracer.trace(e); // map.put("code", HttpStatus.INTERNAL_SERVER_ERROR.value()); // map.put("message", e.getLocalizedMessage()); // map.put("data", null); // return map; // } // // /** // * 处理业务校验过程中碰到的非法参数异常 该异常基本由{@link Assert}抛出 // * // * @param exception 参数校验异常 // * @return API返回结果对象包装后的错误输出结果 // * @see Assert#hasLength(String, String) // * @see Assert#hasText(String, String) // * @see Assert#isTrue(boolean, String) // * @see Assert#isNull(Object, String) // * @see Assert#notNull(Object, String) // */ // @ExceptionHandler(IllegalArgumentException.class) // @ResponseStatus(HttpStatus.OK) // public Map handleIllegalArgumentException(IllegalArgumentException exception) { // log.error("非法参数,ex = {}", exception.getMessage(), exception); // Map map = new HashMap(); // map.put("code", HttpStatus.INTERNAL_SERVER_ERROR.value()); // map.put("message", exception.getMessage()); // return map; // } // // /** // * validation Exception // * // * @param exception // * @return R // */ // @ExceptionHandler({MethodArgumentNotValidException.class}) // @ResponseStatus(HttpStatus.BAD_REQUEST) // public Map handleBodyValidException(MethodArgumentNotValidException exception) { // List fieldErrors = exception.getBindingResult().getFieldErrors(); // log.warn("参数绑定异常,ex = {}", fieldErrors.get(0).getDefaultMessage()); // Map map = new HashMap(); // map.put("code", HttpStatus.INTERNAL_SERVER_ERROR.value()); // map.put("message", String.format("%s %s", fieldErrors.get(0).getField(), fieldErrors.get(0).getDefaultMessage())); // map.put("data", null); // return map; // } // // /** // * validation Exception (以form-data形式传参) // * // * @param exception // * @return R // */ // @ExceptionHandler({BindException.class}) // @ResponseStatus(HttpStatus.BAD_REQUEST) // public Map bindExceptionHandler(BindException exception) { // List fieldErrors = exception.getBindingResult().getFieldErrors(); // log.warn("参数绑定异常,ex = {}", fieldErrors.get(0).getDefaultMessage()); // Map map = new HashMap(); // map.put("code", HttpStatus.INTERNAL_SERVER_ERROR.value()); // map.put("message", fieldErrors.get(0).getDefaultMessage()); // map.put("data", null); // return map; // } // //}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy