温馨提示×

MyBatis ofType和collection区别

小樊
146
2024-07-14 15:48:27
栏目: 编程语言

在MyBatis中,ofTypecollection是两个不同的属性,用来处理参数传递给SQL语句中的集合参数。

  1. ofType属性用于指定集合中元素的类型,可以指定Java集合类的泛型类型。例如:
<parameterMap id="parameterMap" type="java.util.List">
  <parameter property="list" javaType="java.util.List" ofType="java.lang.String"/>
</parameterMap>

在这个例子中,ofType指定了集合中元素的类型为java.lang.String

  1. collection属性用于指定SQL语句中使用的参数的名称。例如:
<select id="selectByIds" resultMap="userResultMap">
  SELECT *
  FROM user
  WHERE id IN
  <foreach collection="ids" item="id" open="(" separator="," close=")">
    ${id}
  </foreach>
</select>

在这个例子中,collection指定了在<foreach>标签中使用的集合参数的名称为ids

总结来说,ofType用于指定集合中元素的类型,而collection用于指定SQL语句中使用的参数的名称。它们是处理集合参数的两个不同属性。

0