解决:
+ "<if test='userid!=null'>" + " and id in (#{userid})" + "</if>"
将
#{userid}改为
${userid}
说明:
#的时候,其实是一个String。in ("1,2,3")
这样的话,在mysql中执行也只会查出一条记录。
$的时候,才是我们需要的,传入什么就会替换成什么,不会去加上一个任何处理。
这样才是我们正确的写法。
下面这个${_parameter}
这个是将所有的参数都替换过去,所以这个跟你写法有一定的关系,否则系统也不会知道你具体需要传入什么值。
下面的兄弟,说的比较详细,可以参考下: