在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();
}
在實際應用中,需要根據具體的需求和數據量來決定是否使用批量插入操作。批量插入操作可以提高插入數據的效率,特別是在插入大量數據時。