MyBatis 批量BATCH

@Autowired
private SqlSessionFactory sqlSessionFactory;

@Transactional(rollbackFor = Exception.class)
@Override
public void batchTest() {
SqlSession sqlSession = sqlSessionFactory.openSession(ExecutorType.BATCH);
CountryMapper mapper = sqlSession.getMapper(CountryMapper.class);
List<Country> countries = mapper.selectAll();
for (int i = 0; i < countries.size(); i++) {
Country country = countries.get(i);
country.setCountryname(country.getCountryname() + "Test");
mapper.updateByPrimaryKey(country);
//每 50 条提交一次
if((i + 1) % 50 == 0){
sqlSession.flushStatements();
}
}
sqlSession.flushStatements();
}
---------------------

posted @ 2019-07-25 16:39  He_quotes  阅读(178)  评论(0)    收藏  举报