当前使用版本(必须填写清楚,否则不予处理)
3.3.0
该问题是怎么引起的?(最新版上已修复的会直接close掉)
版本从3.1.0升级到3.2.0后,原来使用lambda表达式执行修改操作报错
重现步骤
使用3.2.0 类似问题是 #1428
报错信息
Comment From: kanghouchao
Comment From: kanghouchao
写问题描述之前我用的是3.2.0,但是写的过程中用3.3.0测试了一下,也是一样的问题,改了标题,忘记改问题描述里面的版本号了
Comment From: kanghouchao
试了3.1.0,3.1.2 3.2.0和3.3.0
只有3.1.0支持类似写法
Comment From: miemieYaho
给出你的复现demo
Comment From: kanghouchao
完整代码弄不出来 先给一个示例代码,完整的demo我稍后写一个
`@Validated
public class BaseServiceImpl
private Class<T> entityClass;
......
@Override
public boolean deleteLogic(@NotEmpty List<Integer> ids) {
T entity = BeanUtil.netInstance(entityClass);
entity.setUpdateUser(....);
.....
return super.update(entity, new UpdateWrapper<T>().lambda().in(T::getId, ids);
}
}`
Comment From: miemieYaho
T::getId ,现在不支持这种
Comment From: kanghouchao
那这个方法不可用了?还是有 其他的传参方式
Comment From: miemieYaho
不支持泛型,你非要这么用就用 3.3.1.10-SNAPSHOT ,该版本下直接new LambdaWrapper 使用 entityclass 入参的构造函数
Comment From: kanghouchao
好吧
Comment From: kanghouchao
如果实例里面设置了逻辑删除字段,就在调用remove方法的时候触发自动填充的update也能实现这个效果
Comment From: miemieYaho
只能用 LambdaWrapper 的 entityclass 入参的构造器 new
Comment From: ye17186
T::getId 这种用法,后续还考虑支持吗?