@Data
@AllArgsConstructor
@NoArgsConstructor
public class JsonResult {
private Integer code;
private String msg;
private String url;
}
3)全局异常处理类
/**
- 全局异常处理
*/
@Slf4j
@RestControllerAdvice
public class GlobalExceptionHanlder {
@ExceptionHandler(Exception.class)
public ResponseEntity handleException(Exception ex, HttpServletRequest request){
log.error("Exception ",ex);
return ResponseEntity.ok(new JsonResult(500,ex.getMessage(),request.getRequestURL().toString()));
}
}
代码说明:
@Slf4j 是注入日志对象log
@RestControllerAdvice 注解将当前类作为全局异常处理类,Rest表示里面所有方法都直接返回JSON数据,
如果需要页面跳转可以使用@ControllerAdvice
@ExceptionHandler配置异常处理方法,value是处理的异常类型,Exception.class就是处理所有异常了
处理方法中进行了日志