循环保存在事务中为何只保存到最后一个对象
来源:互联网 发布:seo外包收费标准 编辑:程序博客网 时间:2024/05/21 03:17
有时候我们在使用事务保存一个循环中的对象时,可能会出现在提交事务后发现只保存到了最后一个对象,代码如下:
session = sf.openSession();
transaction = session.beginTransaction();
session.save(projectInfo);
ProjectProduct projectPro = new ProjectProduct();
for (int i = 0; list != null && i < list.size(); i++) {
........
session.save(projectPro);
}
transaction.commit();
session.close();
在上面代码中,每一次循环都填充一个projectPro,使得在事务提交的时候,save的就是最后一个projectPro,前面的都已经不存在了,就没有保存到,解决方法是把ProjectProduct projectPro = new ProjectProduct()放到循环里面
session = sf.openSession();
transaction = session.beginTransaction();
session.save(projectInfo);
ProjectProduct projectPro = new ProjectProduct();
for (int i = 0; list != null && i < list.size(); i++) {
........
session.save(projectPro);
}
transaction.commit();
session.close();
在上面代码中,每一次循环都填充一个projectPro,使得在事务提交的时候,save的就是最后一个projectPro,前面的都已经不存在了,就没有保存到,解决方法是把ProjectProduct projectPro = new ProjectProduct()放到循环里面
0 0
- 循环保存在事务中为何只保存到最后一个对象
- hibernate save for循环保存只保存最后一次
- 保存对象到文件中
- 为何在设备上运行时无法保存数据到应用bundle中
- iOS为何在设备上运行时无法保存数据到应用bundle中
- 利用hashtable思想,保存在一个字符串中找到第一个只出现一次的字符
- Sqlserver2008 保存文件对象到字段中
- 将对象被保存到sharepre中
- Java 保存对象到文件中
- 读取一个二进制文件保存到数据库中
- 保存一个XML到文件中
- 保存一个信息到person中
- 数组保存图片地址然后输出到网页为什么只显示最后一张
- 将对象保存在本地文件中实现
- 在action中将字符串、对象、list集合保存到session中,在jsp页面获取
- 输入一个字符串,保存在磁盘中
- struts2 中将对象保存到session中在页面无法获得
- C# List<T> Add方法循环添加时只保存了最后一次的数据(覆盖问题)
- 物联网、云计算:重新定义企业安全
- 九度 题目1352:和为S的两个数字
- 第 11 章其它编程经验索引
- 深入理解db2缓冲池bufferpool
- VS2010环境下MFC使用DataGrid绑定数据源以及控件注册问题解决
- 循环保存在事务中为何只保存到最后一个对象
- OneToOne注解报异常:java.lang.NoSuchMethodError: javax.persistence.OneToMany.orphanRemoval()Z
- vlc-android代码分析一
- BIOS加载MBR到内存地址0x7C00的由来
- NSNotificationCenter发送通知
- 11.1 使用const 提高函数的健壮性
- Jquery自定义验证
- 面试总结之一 Servlet 和 Filter
- 文件流操作