(快速参考)

attach

目标

将“分离的”域实例与当前 Hibernate 会话关联起来

示例

def b = Book.get(1)
b.title = "Blah"
b.save(flush:true)

b.discard()

...
if (!b.isAttached()) {
    b.attach()
}

说明

Hibernate 在持久性会话中管理持久性实例。每个请求都会创建一个新会话,并在请求结束时关闭。如果某个对象从会话中检索出来并放入 Web 范围(如 HttpSession),则它将在会话关闭并被丢弃之后从 Hibernate 会话中“分离”出来。您可以使用 attach() 方法重新将现有的持久性实例附加到当前请求的持久性会话中。