public class MyQueryWrapper<T> extends QueryWrapper<T> {
@Override
protected String columnToString(String column) {
// 驼峰命名转换为下划线命名
return StringUtils.camelToUnderline(column);
}
}
/ 往后时候的wrapper都希望是MyQueryWrapper /
MyQueryWrapper<WarehouseInfo> w = new MyQueryWrapper<>()
w.and(wrapper -> {
wrapper.in(WarehouseInfo.Fields.provinceCode, dto.getAreaCodeSet());
wrapper.or();
wrapper.in(WarehouseInfo.Fields.cityCode, dto.getAreaCodeSet());
wrapper.or();
wrapper.in(WarehouseInfo.Fields.countyCode, dto.getAreaCodeSet());
});
/ 期望能够使用MyQueryWrapper的columnToString方法 /
Comment From: miemieYaho
重写#instance
Comment From: coderLrf
重写#instance
public class MyQueryWrapper<T> extends QueryWrapper<T> {
@Override
protected String columnToString(String column) {
// 驼峰命名转换为下划线命名
return StringUtils.camelToUnderline(column);
}
@Override
protected QueryWrapper<T> instance() {
return new MyQueryWrapper<>();
}
}