2014-11-06 89 views
3

你好任何一个建议我,何时使用合并()而不是保存()Grails何时使用merge()而不是save()?

我喜欢当我保存域与保存()方法它的正常工作在某些情况下,但在某些情况下,它是创造"org.hibernate.LazyInitializationException"为我破例了一些问题。

我可以使用直接合并()方法来保存域实例,而不是保存()

回答

3

你可以看到,无论merge()save()方法调用save()方法在内部,不同的是他们的行为,即如果存储对象在HTTP会话,以后要访问,但该对象已经失去了持续的背景下,合并( )方法将分离的对象的状态合并回当前的Hibernate会话中。但是如果您在分离的对象上调用save()方法,您将面临性能异常(org.hibernate.LazyInitializationException),正如您所提到的那样。 欲了解更多信息documentation

相关问题