休眠中的分离对象

时间:2010-10-26 22:09:22

标签: java hibernate orm persistence

分离对象有什么好处?他们提供什么价值?感谢。

3 个答案:

答案 0 :(得分:5)

当您需要在不同的休眠会话之间保持对象“活着”时。示例:在Web应用程序中,如果您正在使用每个请求的会话模式,并且您需要在多个页面之间保留相同的hibernate实体。

请查看Hibernate文档:

Chapter 10: Working with objects

Chapter 11: Transactions and Concurrency

答案 1 :(得分:3)

假设您需要执行长事务(用户输入需要时间)以及要用作表示层元素的对象。现在你的对象需要发挥双重作用。

  1. 作为分离对象(用作表示层对象)
  2. 重新附加的对象(完成交易)
  3. 这怎么可能?

    在两个交易中中断交易。一旦内部事务完成,Object将被分离并且它可以在表示层中工作。演示文稿完成后,它将进入另一个事务,并将作为附加对象。

    所以这一切都是可能的,因为附加了对象。

答案 2 :(得分:1)

当需要处理长事务时,将长事务分解为两个或多个事务是合乎逻辑的。 分离的对象可用于将信息传递到UI层,并可在另一个会话的帮助下重新附加到新事务。

另一方面,在这种情况下使用分离对象并不是很明智,而DTO(数据传输对象)可以在这里很好地发挥作用。