Mybatisで全件削除をする方法

Mybatisで全件削除をする方法

MyBatisで全件削除をする方法

全件削除を行うには、MyBatisのdeleteステートメントを使います。
以下にtest_userというテーブルから全件削除する例を示します。

Mapper XML
<mapper namespace="com.example.TestMapper">
    <delete id="deleteAllUsers">
        DELETE FROM test_user
    </delete>
</mapper>
Mapper Interface
package com.example;

public interface TestMapper {
    void deleteAllUsers();
}
使用例
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;

public class Main {
    public static void main(String[] args) {
        SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(Main.class.getResourceAsStream("/mybatis-config.xml"));
        try (SqlSession session = sqlSessionFactory.openSession()) {
            TestMapper mapper = session.getMapper(TestMapper.class);
            mapper.deleteAllUsers();
            session.commit();
        }
    }
}

この例では、test_userテーブルの全件を削除するためのdeleteステートメントを定義し、それを呼び出すMapperインターフェースを作成しています。