• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

Mybatis使用foreach标签实现批量插入

武飞扬头像
rushbubu
帮助1

在 Mybatis 中,可以使用 insert 标签实现单条数据的插入,但如果需要插入多条数据,则可以使用 Mybatis 提供的 insertList 方法,或者使用 foreach 标签实现批量插入。

使用 insertList 方法可以直接将 List 集合作为参数传入到 Mapper 中,然后在 Mapper 的 XML 中使用 foreach 标签遍历 List 集合,实现批量插入,如下所示:

int insertList(List<User> userList);
  1.  
    <insert id="insertList" parameterType="java.util.List">
  2.  
    insert into user (username,password,email) values
  3.  
    <foreach collection="list" item="user" separator=",">
  4.  
    (#{user.username},#{user.password},#{user.email})
  5.  
    </foreach>
  6.  
    </insert>

在这里,insertList 方法的参数是一个包含多个 User 对象的 List 集合。XML 配置文件中的 <insert> 标签中使用了 <foreach> 标签遍历了 List 中的每一个 User 对象,并将其属性插入到表中。

需要注意的是,为了避免 SQL 注入攻击,在将 List 集合作为参数传入 Mapper 方法时,建议使用 Java 的 Collection 接口或者数组类型,而不是采用字符串拼接的方式动态生成 SQL 语句。

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhgkafhh
系列文章
更多 icon
同类精品
更多 icon
继续加载