记录一下项目中Mybatis实现批量插入数据的操作
来源:互联网 发布:美工刀片生锈了怎么办 编辑:程序博客网 时间:2024/06/02 05:53
long start1 = System.currentTimeMillis();
List<String[]> field_list = new ArrayList<String[]>();
List<DNA_Data> list = new ArrayList<DNA_Data>();
// 对上传的文件进行解析
int n = GetSJ_Info.readTxtFile(filepath, field_list);
long end1 = System.currentTimeMillis();
log.debug("read time sum: " + (end1 - start1));
// i为第几行
long start = System.currentTimeMillis();
// 将解析后的数据插入到sj_info数据库中
boolean add = false;
for (int i = 0; i < n; i++) {
//这里的对象需要放在for循环里面
DNA_Data data1 = new DNA_Data();
data1.setSample_file(field_list.get(i)[0]);
data1.setSample_id(field_list.get(i)[1]);
data1.setSj_info(field_list.get(i)[2]);
data1.setLoca(field_list.get(i)[3]);
data1.setGenotype1(field_list.get(i)[4]);
data1.setGenotype2(field_list.get(i)[5]);
// add = dataService.addDNA(data1);
//将对象添加到集合中
list.add(data1);
}
// 批量插入数据库
add = dataService.insertMult(list);
long end = System.currentTimeMillis();
log.debug("insert time sum: " + (float) ((end - start) / 1000) + "s");// 这里时间太 长了,需要做到批量处理,最终时间是0.05s
下面贴上XXXMapper.xml代码
<!-- 批量插入(新增) -->
<insert id ="insertMult" parameterType="java.util.List" >
<selectKey resultType ="java.lang.Integer" keyProperty= "id"
order= "AFTER">
SELECT LAST_INSERT_ID()
</selectKey >
insert into sj_info (sample_file, sample_id, sj_info, loca,genotype1,genotype2) values
<foreach collection ="list" item="item" index= "index" separator =",">
(#{item.sample_file},#{item.sample_id},#{item.sj_info},#{item.loca},#{item.genotype1}, #{item.genotype2})
</foreach >
</insert >
在此记录一下,也给跟我一样不会的小白学习一下
- 记录一下项目中Mybatis实现批量插入数据的操作
- mybatis实现oracle批量插入,带序列(记录一下)
- mybatis实现oracle批量插入,带序列(记录一下)
- mybatis的批量操作记录
- 批量插入数据(基于Mybatis的实现-Oracle)
- iBatis批量插入数据记录操作
- mybatis中批量插入数据(MYSQL)
- Oracle数据库中Mybatis批量插入数据
- Mybatis中实现oracle的批量插入、更新
- Mybatis中实现oracle的批量插入、更新
- mybatis数据批量插入
- mybatis数据批量插入
- mybatis批量插入数据
- mybatis 批量插入数据
- MyBatis批量插入数据
- mybatis数据批量插入
- mybatis批量插入数据
- mybatis数据批量插入
- python2.7 各种姿势
- C++:如何把一个int转成4个字节?
- SQLite数据库对数据的基本操作(二)
- 不小心删除了数据库,是什么样的体验 ?
- 欢迎使用CSDN-markdown编辑器
- 记录一下项目中Mybatis实现批量插入数据的操作
- MYSQL数据库超大级别数据读
- c++ string类型 截取、替换、查找子串函数
- rk3288 ap6335 linux下的wifi 热点功能使用
- 【Hibernate】(一)快速入门
- 透彻的掌握 Spring 中@transactional 的使用
- c++基础知识总结
- MySQL Oracle 别名
- 解决android7.0+ 自定义Toast时长,但是toast不显示问题