java - hibernate 事务 : Only Last item of list is saved into the table

标签 java hibernate ejb

我有一个需要保存到数据库表中的 DTO 类列表。由于某些我无法跟踪的未知原因,只有最后一项被保存到数据库中。

在下面找到示例服务和管理器类,

class TestService {

public void saveData(List<OrderDTO> dtolist) {
//exception handling properly
transaction.begin();
manager.saveAlldata(dtolist);
transaction.commit();
}
}

Class TestManager {
 public void saveAlldata(List<OrderDTO> dtolist) {
//exception handles properly
 for(OrderDTO dto: dtolist){
    OrderPersist persist = new OrderPersistent();
    persist.setId(dto.getId());
    persist.setItem(dto.getItem());
 //save(persist) or merge(persist);
  }
}

假设我有 2 个项目详细信息,例如dto 列表中的 id=1、Item=S_001 和 Id=2、Item=S_002 则仅将最后一项(2、S_002)保存到表中。

最佳答案

你试过这个吗?

public void saveAlldata(List<OrderDTO> dtolist) {
//exception handles properly
 for(OrderDTO dto: dtolist){
transaction.begin();
OrderPersist persist = new OrderPersistent();
persist.setId(dto.getId());
persist.setItem(dto.getItem());
//save(persist) or merge(persist);
transaction.commit();
}
}

关于java - hibernate 事务 : Only Last item of list is saved into the table,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39118482/

相关文章:

java - 在 JPA Criteria API 的子查询中使用 ORDER BY 的替代方法是什么?

java - 如何使用命令行部署EJB 3.0?

java - 循环 EJB 依赖项的缺点?

java - 使用spring、tomcat和hibernate是什么原因导致出现重复请求

java - 使用 Hibernate OGM 的 MongoDb 身份验证

java - 通过java取消隐藏文本文件

java - GWT 在服务器启动时执行 Liquibase 脚本

ejb - 部署远程 EJB 和 Web 应用程序

java - 如何在 JTextArea 中显示对象?

java - Grails:java.lang.IllegalArgumentException:没有枚举常量