当前使用版本(必须填写清楚,否则不予处理)
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-core</artifactId>
<version>3.0.7.1</version>
该问题是怎么引起的?(最新版上已修复的会直接close掉)
AbstractWrapper类中in和notIn 方法,如果集合参数传入了null或者空列表,会导致把表内所有数据都查询或者操作。 在删除数据操作时,使用了In方法。因为没有要删除的id,然后传入了一个空列表,然后导致表中所有数据都被删除了。与开发期望不符。 期望in和notIn方法,在传入null或者空列表时,生成的条件类似于:1!=1 。 既然传入的数据为空,那in 空数据 的自然应该也是空数据。
重现步骤
报错信息
无
Comment From: tcnf2008
新版本貌似已经修复这个问题了?
Comment From: miemieYaho
自己去判null和空
Comment From: freshgeek
能说下你的考虑吗?如果自己去判断无疑是重复代码
自己去判null和空