在MyBatis中,可以使用SqlSession
对象的insert
方法进行批量插入操作。首先,需要在Mapper文件中定义一个insertBatch
方法,该方法接收一个List
类型的参数,表示要插入的数据列表。然后,在对应的Mapper接口中定义一个方法,如void insertBatch(List<Object> list)
,用于调用Mapper文件中定义的insertBatch
方法。
接下来,在代码中获取SqlSession
对象,并调用insert
方法进行批量插入操作。示例代码如下:
List<Object> dataList = new ArrayList<>();
// 添加数据到dataList
SqlSession sqlSession = sqlSessionFactory.openSession(ExecutorType.BATCH);
try {
Mapper mapper = sqlSession.getMapper(Mapper.class);
mapper.insertBatch(dataList);
sqlSession.commit();
} finally {
sqlSession.close();
}
在实际应用中,需要根据具体的需求和数据量来决定是否使用批量插入操作。批量插入操作可以提高插入数据的效率,特别是在插入大量数据时。