Mybatis中使用foreach是在对传入的数组或List或别的更复杂的不定长结构遍历的解决方法,
我们平常也会经常用到这个写法,所以为了打一个备忘录也为了分享,就查询资料总结了一下这个foreach的使用方法,需要注意的点和我碰到的问题,作为一个新手,经验不是很丰富,如果有不同意见的地方,请留言讨论,如果我看到肯定会回复的。
一,foreach使用格式:
- collection:指定输入对象中的集合属性
- item:每次遍历生成的对象
- open:开始遍历时的拼接字符串
- close:结束时拼接的字符串
- separator:遍历对象之间需要拼接的字符串
二、 常见错误:
1、foreach拼接字符串,开头和结尾用单引号,否则报错
2、中括号使用转义符,否则查询结果不正确
3、${item}不能用#,否则报错
4、使用replace函数去空格,否则查询不到结果(mybatis自动给我加上了空格)
三、心得:
如果只是正常的 "(" 或 ")" 并没有任何问题,
在使用mybatis的foreach标签时在开头(open) 和结束(end)时,如果是单引号,则在拼接时不能使用#{item},只能使用${item}拼接。
四、参考:
MyBatis中正则使用foreach拼接字符串 / 张生荣
五、mybatis中使用collection
更多推荐
Mybatis中使用foreach
发布评论