休眠保存集合

时间:2019-03-21 04:10:35

标签: hibernate

是否可以自己保存对象的集合? 我知道如果对象是一对多关系,如何保存对象的集合。因为我不想迭代对象,有没有办法自行保存对象的集合?

1 个答案:

答案 0 :(得分:0)

让我们从SQL方式开始我们如何进行多次插入

  • 开始交易
  • 为每条记录创建插入脚本
  • 在一个事务中运行所有插入脚本
  • 提交交易

如果要从休眠框架中插入,则采用相同的方式

  • 创建会话
  • 公开交易
  • 创建一个for循环,依次创建实体对象
  • 在循环中每次迭代完成后保存每个实体
  • 提交交易
  • 关闭会话

对于休眠端,仅当您提交所有事务时,才会生成用于插入的SQL查询。因此,由于您在此处使用循环,因此不会增加任何开销。 Hibernate没有任何内置方法可用于您的操作。您必须编写自定义插入方法来满足您的要求

public void createList(List<C> list, Session session) 
{
    for (C obj : list)
    {
        session.save(obj);
    }
}