package com.moral.api.exception; 
 | 
  
 | 
import com.moral.constant.ResponseCodeEnum; 
 | 
import com.moral.constant.ResultMessage; 
 | 
import com.moral.exception.TokenException; 
 | 
import lombok.extern.slf4j.Slf4j; 
 | 
import org.springframework.http.HttpStatus; 
 | 
import org.springframework.web.bind.annotation.ControllerAdvice; 
 | 
import org.springframework.web.bind.annotation.ExceptionHandler; 
 | 
import org.springframework.web.bind.annotation.ResponseBody; 
 | 
import org.springframework.web.bind.annotation.ResponseStatus; 
 | 
  
 | 
  
 | 
@ControllerAdvice 
 | 
@ResponseBody 
 | 
@Slf4j 
 | 
public class GlobalExceptionHandler { 
 | 
    /** 
 | 
     * 处理全部异常 
 | 
     */ 
 | 
    @ExceptionHandler 
 | 
    @ResponseBody 
 | 
    @ResponseStatus(HttpStatus.OK) 
 | 
    public ResultMessage handleException(Exception ex) { 
 | 
        log.error(ex.getMessage()); 
 | 
        ex.printStackTrace(); 
 | 
  
 | 
        return  ResultMessage.fail(ResponseCodeEnum.FAIL.getCode(), ResponseCodeEnum.FAIL.getMsg()); 
 | 
    } 
 | 
  
 | 
    /** 
 | 
     * 处理BusinessException异常 
 | 
     */ 
 | 
    @ExceptionHandler({BusinessException.class}) 
 | 
    @ResponseBody 
 | 
    @ResponseStatus(HttpStatus.OK) 
 | 
    public ResultMessage handleUserNotExistException(BusinessException ex) { 
 | 
        return ResultMessage.fail(ResponseCodeEnum.FAIL.getCode(), "请求用户数据失败"); 
 | 
    } 
 | 
  
 | 
    /** 
 | 
     * 处理TokenException异常 
 | 
     */ 
 | 
    @ExceptionHandler({TokenException.class}) 
 | 
    @ResponseBody 
 | 
    @ResponseStatus(HttpStatus.OK) 
 | 
    public ResultMessage handleTokenException(TokenException ex) { 
 | 
        return ResultMessage.fail(ex.getCode(),ex.getMsg()); 
 | 
    } 
 | 
  
 | 
} 
 |