mybatisPlus修改时id为空 统一抛出异常
时间: 2023-08-13 21:08:22 浏览: 90
Mybatis Plus 字段为空值时执行更新方法未更新解决方案
可以在 MybatisPlus 的配置文件中添加全局异常拦截器,捕获所有抛出的异常,然后判断异常类型是否为 MybatisPlus 的 `UpdateByIdError` 异常,如果是则说明修改时 id 为空,此时可以统一抛出自定义的异常信息,如下所示:
```java
@Configuration
public class MybatisPlusConfig {
@Bean
public GlobalExceptionHandler globalExceptionHandler() {
return new GlobalExceptionHandler();
}
public class GlobalExceptionHandler implements HandlerExceptionResolver {
@Override
public ModelAndView resolveException(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object o, Exception e) {
if (e instanceof UpdateByIdError) {
throw new CustomException("修改时 id 不能为空");
}
// 其他异常处理逻辑
return null;
}
}
}
```
这样就可以在所有的修改操作中统一抛出异常信息,避免了因为忘记判断 id 是否为空而导致的程序错误。
阅读全文