42 lines
1.1 KiB
Java
42 lines
1.1 KiB
Java
package io.common.exception;
|
|
|
|
import io.common.utils.Result;
|
|
import org.slf4j.Logger;
|
|
import org.slf4j.LoggerFactory;
|
|
import org.springframework.dao.DuplicateKeyException;
|
|
import org.springframework.web.bind.annotation.ExceptionHandler;
|
|
import org.springframework.web.bind.annotation.RestControllerAdvice;
|
|
|
|
/**
|
|
* 异常处理器
|
|
*/
|
|
@RestControllerAdvice
|
|
public class RenExceptionHandler {
|
|
private static final Logger logger = LoggerFactory.getLogger(RenExceptionHandler.class);
|
|
|
|
/**
|
|
* 处理自定义异常
|
|
*/
|
|
@ExceptionHandler(RenException.class)
|
|
public Result handleRenException(RenException ex){
|
|
Result result = new Result();
|
|
result.error(ex.getCode(), ex.getMsg());
|
|
|
|
return result;
|
|
}
|
|
|
|
@ExceptionHandler(DuplicateKeyException.class)
|
|
public Result handleDuplicateKeyException(DuplicateKeyException ex){
|
|
Result result = new Result();
|
|
result.error("数据库中已存在该记录!");
|
|
return result;
|
|
}
|
|
|
|
@ExceptionHandler(Exception.class)
|
|
public Result handleException(Exception ex){
|
|
logger.error(ex.getMessage(), ex);
|
|
|
|
return new Result().error(ex.getMessage());
|
|
}
|
|
}
|