温馨提示×

mybatis批量删除list的方法是什么

小亿
308
2023-12-23 19:13:15
栏目: 编程语言

MyBatis提供了一个批量删除list的方法,可以使用Mapper XML文件或者注解来实现。

  1. 使用Mapper XML文件: 在Mapper XML文件中编写一个删除语句,并使用foreach标签来循环删除list中的每个元素。例如:
<delete id="deleteBatch" parameterType="java.util.List">
  DELETE FROM table_name
  WHERE id IN
  <foreach item="item" index="index" collection="list" open="(" separator="," close=")">
    #{item}
  </foreach>
</delete>

在Java代码中,调用Mapper接口的对应方法来实现批量删除。例如:

List<Integer> idList = new ArrayList<>();
idList.add(1);
idList.add(2);
idList.add(3);
mapper.deleteBatch(idList);
  1. 使用注解: 在Mapper接口中使用@Delete注解,并使用foreach属性来循环删除list中的每个元素。例如:
@Delete("DELETE FROM table_name WHERE id IN "
        + "<foreach item='item' index='index' collection='list' open='(' separator=',' close=')'>"
        + "#{item}"
        + "</foreach>")
void deleteBatch(List<Integer> idList);

在Java代码中,调用Mapper接口的对应方法来实现批量删除。例如:

List<Integer> idList = new ArrayList<>();
idList.add(1);
idList.add(2);
idList.add(3);
mapper.deleteBatch(idList);

以上是两种常见的MyBatis批量删除list的方法。根据具体需求和使用习惯,可以选择其中一种来实现。

0