记录使用Mybatis遇到的问题
1.在使用mybatis传入数组或者list集合类型的参数时 如果要用自己的参数名必须要加@param。如下`

在mybatis中如果传入数组类型的参数。myabtis会把数组转成Map,而这个map的key是array ,value 则是数组里面的值。Map<array,value>.
所以如果不加@Param那么只能如下写sql。


。如果不加@Param。用自己的变量名ids 在sql片段里面。Mybatis会报错。说找不到参数名ids。
总结:@param。就是指定自定义的参数名,以免在多参数的情况下mybatis不知道哪个参数对应哪一个。而本文中的数组参数找不到。是因为传入数组时 默认的就是array。如果不想用array。就得加@Param指定参数名
在Mybatis中遇到传入数组或List作为参数时,由于Mybatis会将数组转换为Map,默认键为'array'。如果不加@Param注解,会导致SQL查询出错。本文详细介绍了如何通过使用@Param来指定自定义参数名,避免因参数映射不清造成的错误,确保多参数情况下正确执行查询操作。
2475

被折叠的 条评论
为什么被折叠?



