温馨提示×

MyBatis集合如何操作

小樊
87
2024-08-08 09:29:45
栏目: 编程语言
开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

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 语句中进行操作。

亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读:如何通过MyBatis实现集合的批量操作

0