QueryWrapper我用的是这种形式的
eq(R column, Object val)
文档里说null值不会加入sql的生成,但是实际测试还是会。
mp有这种形式的
eq(boolean condition, R column, Object val)
但是这种要多写很多!=null
的判断
所以有没有什么方法(或者说要配置什么)才能让QueryWrapper中的null值不参与sql的生成
好家伙,我还跑去翻源码,翻了一会发现跑偏了,直接对queryWrapper改造不就行了。
public class CustomAbstractWrapper<T> extends QueryWrapper<T> {
@Override
protected QueryWrapper<T> addCondition(boolean condition, String column, SqlKeyword sqlKeyword, Object val) {
if(Objects.isNull(val)){
condition = false;
}
return super.addCondition(condition, column, sqlKeyword, val);
}
}
重写queryWrapper.addCondition就行