mybatis

MyBatis集合如何操作

小樊
83
2024-08-08 09:29:45
栏目: 编程语言

MyBatis 中可以通过以下方式操作集合:

  1. 使用 resultMap 定义集合映射关系,将查询结果映射到集合对象中。
<resultMap id="userMap" type="User">
    <result property="id" column="id"/>
    <result property="name" column="name"/>
</resultMap>

<select id="selectUsers" resultMap="userMap">
    select id, name from user
</select>
  1. 使用 collection 元素定义集合对象的映射关系。
<resultMap id="userMap" type="User">
    <id property="id" column="id"/>
    <result property="name" column="name"/>
    <collection property="orders" ofType="Order">
        <id property="orderId" column="order_id"/>
        <result property="orderName" column="order_name"/>
    </collection>
</resultMap>

<select id="selectUsers" resultMap="userMap">
    select u.id, u.name, o.order_id, o.order_name
    from user u
    left join order o on u.id = o.user_id
</select>
  1. 使用 parameterType 定义输入参数类型,传递集合对象到 SQL 语句中。
<update id="insertUsers" parameterType="java.util.List">
    insert into user (id, name) values
    <foreach collection="list" item="user" separator=",">
        (#{user.id}, #{user.name})
    </foreach>
</update>

通过以上方式,可以方便地操作集合对象,并将查询结果映射到集合对象中,或者将集合对象传递到 SQL 语句中进行操作。

0
看了该问题的人还看了