MyBatisでデータを一括挿入する方法は何ですか。
MyBatisでは、foreachタグを使用してデータの一括挿入を実現することができます。具体的な手順は次の通りです:
- Mapperインターフェースを作成し、データを一括挿入するためのinsertBatchメソッドを定義します。
public interface UserMapper {
void insertBatch(List<User> userList);
}
- Mapperのインターフェースに対応するXMLファイルで、insertBatchメソッドのSQL文を記述し、foreachタグを使用してデータを繰り返し挿入します。
<insert id="insertBatch" parameterType="java.util.List">
insert into user (name, age) values
<foreach collection="list" item="item" index="index" separator=",">
(#{item.name}, #{item.age})
</foreach>
</insert>
- コード内でinsertBatchメソッドを呼び出し、挿入するデータのリストを渡します。
List<User> userList = new ArrayList<>();
userList.add(new User("Alice", 25));
userList.add(new User("Bob", 30));
userMapper.insertBatch(userList);
上記の手順に従うことで、MyBatisでデータを一括で挿入することができます。