Mybatis 传入数组参数

记录使用Mybatis遇到的问题

1.在使用mybatis传入数组或者list集合类型的参数时 如果要用自己的参数名必须要加@param。如下`
在这里插入图片描述
在mybatis中如果传入数组类型的参数。myabtis会把数组转成Map,而这个map的key是array ,value 则是数组里面的值。Map.
所以如果不加@Param那么只能如下写sql。
在这里插入图片描述
在这里插入图片描述
。如果不加@Param。用自己的变量名ids 在sql片段里面。Mybatis会报错。说找不到参数名ids。
总结:@param。就是指定自定义的参数名,以免在多参数的情况下mybatis不知道哪个参数对应哪一个。而本文中的数组参数找不到。是因为传入数组时 默认的就是array。如果不想用array。就得加@Param指定参数名

你可能感兴趣的:(java,mybatis)