MyBatis 中 foreach 语句处理 List<Integer>类型

对于 Mybatis 中 foreach的用法,有太多人都写过了,也不想在赘述,只是自己遇到的问题,确实是自己才能找到解决的办法。 如下:

select * from table where class_status in 
<foreach collection="list" item="item" open="(" separator="," close=")">
#{item}
</foreach>

上面的语句,在绝大多数时候,是没什么问题的。但是当 class_status 字段类型为 enum时,则会出错,提示无法插入字符型 value。

具体原因,不必追究,仅需要将 #{item} 改为'${item}'即可。

原文地址:https://www.cnblogs.com/bashenandi/p/6799986.html