使用eazyExcel读取数据结合mybatis批量保存到数据库(优化批量保存)
时间: 2023-05-19 14:05:26 浏览: 167
达梦数据库sql语言使用手册
5星 · 资源好评率100%
可以使用以下代码实现:
```
// 读取Excel文件
ExcelReader reader = ExcelUtil.getReader("test.xlsx");
List<Map<String, Object>> dataList = reader.readAll();
// 批量保存到数据库
SqlSession sqlSession = sqlSessionFactory.openSession(ExecutorType.BATCH);
try {
MyMapper mapper = sqlSession.getMapper(MyMapper.class);
for (Map<String, Object> data : dataList) {
mapper.insertData(data);
}
sqlSession.commit();
} catch (Exception e) {
sqlSession.rollback();
} finally {
sqlSession.close();
}
```
其中,MyMapper是一个使用Mybatis注解的Mapper接口,insertData方法用于插入数据。为了优化批量保存,可以在Mybatis配置文件中添加以下配置:
```
<settings>
<setting name="jdbc.batch_size" value="1000"/>
</settings>
```
这样可以一次性插入1000条数据,提高插入效率。
阅读全文