CellTemplateDao.java 1.42 KB
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.CellTemplate;
import pwc.taxtech.atms.entity.CellTemplateExample;

import javax.annotation.Resource;
import java.util.List;

@Service
public class CellTemplateDao {
    @Autowired
    private CellTemplateMapper mapper;
    @Resource(name = "sqlSessionTemplate")
    private SqlSessionTemplate sqlSessionTemplate;

    public List<CellTemplate> getByTemplateId(Long id) {
        CellTemplateExample example = new CellTemplateExample();
        CellTemplateExample.Criteria criteria = example.createCriteria();
        criteria.andReportTemplateIdEqualTo(id);
        return mapper.selectByExample(example);
    }

    public void batchInsert(List<CellTemplate> list) {
        long start = System.currentTimeMillis();
        SqlSession sqlSession = sqlSessionTemplate.getSqlSessionFactory().openSession(ExecutorType.BATCH);
        for (CellTemplate cellTemplate : list) {
            mapper.insertSelective(cellTemplate);
        }
        sqlSession.commit();
        long end = System.currentTimeMillis();
        System.out.println("---------------batch insert: count:" + list.size() + "  time: " + (start - end) + "---------------");
    }
}