mybatis

MyBatis循环删除是如何操作的

小樊
181
2024-07-05 01:21:29
栏目: 编程语言

在MyBatis中,循环删除操作通常使用foreach标签来实现。foreach标签可以在DELETE语句中指定一个集合或数组,循环遍历其中的元素并执行删除操作。

以下是一个示例:

<delete id="deleteByIdList" parameterType="java.util.List">
    DELETE FROM table_name
    WHERE id IN
    <foreach collection="list" item="id" open="(" separator="," close=")">
        #{id}
    </foreach>
</delete>

在上面的示例中,我们定义了一个deleteByIdList方法,该方法接受一个List作为参数,其中包含要删除的id列表。在DELETE语句中使用foreach标签循环遍历id列表,并执行DELETE操作。

要使用这个方法,只需在Mapper接口中定义对应的方法,并在Mapper XML文件中定义对应的SQL语句即可。

public interface MyMapper {
    void deleteByIdList(List<Integer> idList);
}
<mapper namespace="com.example.MyMapper">
    <delete id="deleteByIdList" parameterType="java.util.List">
        DELETE FROM table_name
        WHERE id IN
        <foreach collection="list" item="id" open="(" separator="," close=")">
            #{id}
        </foreach>
    </delete>
</mapper>

这样就可以通过调用deleteByIdList方法来循环删除指定的id列表。

0
看了该问题的人还看了