package pwc.taxtech.atms.dao; import org.apache.ibatis.session.ExecutorType; import org.apache.ibatis.session.SqlSession; import org.mybatis.spring.SqlSessionTemplate; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import pwc.taxtech.atms.entity.CellTemplateConfig; import pwc.taxtech.atms.entity.CellTemplateConfigExample; import javax.annotation.Resource; import java.util.List; @Service public class CellTemplateConfigDao { @Autowired private CellTemplateConfigMapper mapper; @Resource(name = "sqlSessionTemplate") private SqlSessionTemplate sqlSessionTemplate; public List<CellTemplateConfig> getByTemplateId(Long id) { CellTemplateConfigExample example = new CellTemplateConfigExample(); CellTemplateConfigExample.Criteria criteria = example.createCriteria(); criteria.andReportTemplateIdEqualTo(id); return mapper.selectByExample(example); } public void batchInsert(List<CellTemplateConfig> list) { long start = System.currentTimeMillis(); SqlSession sqlSession = sqlSessionTemplate.getSqlSessionFactory().openSession(ExecutorType.BATCH); for (CellTemplateConfig cellTemplate : list) { mapper.insertSelective(cellTemplate); } sqlSession.commit(); long end = System.currentTimeMillis(); System.out.println("---------------batch insert: count:" + list.size() + " time: " + (start - end) + "---------------"); } }