如果 parameterType 是java.util.Set
或其实现,则使用此参数执行 foreach throws java.lang.UnsupportedOperationException
。
<select id="selectList" parameterType="java.util.HashSet" resultMap="someMap">
SELECT key FROM tb_my_table
WHERE value IN (
<foreach collection="set" item="item" separator=",">
#{item}
</foreach>
)
</select>
mybatis3内部的原因是CollectionWrapper
没有实现get
方法,只是抛出了一个异常。
我想知道它是否是有意的设计和原因。