31 lines
1.1 KiB
Java
31 lines
1.1 KiB
Java
package com.hamburg.common.controllerAdvice;
|
|
|
|
|
|
import com.hamburg.common.exception.ProjectException;
|
|
import com.hamburg.common.result.Result;
|
|
import lombok.extern.slf4j.Slf4j;
|
|
import org.springframework.web.bind.annotation.ExceptionHandler;
|
|
import org.springframework.web.bind.annotation.RestController;
|
|
import org.springframework.web.bind.annotation.RestControllerAdvice;
|
|
|
|
@Slf4j
|
|
@RestControllerAdvice
|
|
public class ProjectControllerAdvice {
|
|
|
|
@ExceptionHandler(value = ProjectException.class)
|
|
public Result projectExceptionHandler(Throwable e){
|
|
StackTraceElement stackTraceElement = e.getStackTrace()[0];
|
|
String className = stackTraceElement.getClassName();
|
|
String fileName = stackTraceElement.getFileName();
|
|
int lineNumber = stackTraceElement.getLineNumber();
|
|
String methodName = stackTraceElement.getMethodName();
|
|
log.error("projectExceptionHandler:{}",e.getMessage());
|
|
return Result.error(e.getMessage()+"该方法报错的位置是类:{"+className+"},文件:{"+fileName+"},报错行数:{"+lineNumber+"},方法名:{"+methodName+"}");
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|