如何强制初始化Hibernate JPA代理以在JSON调用中使用它 [英] How to force Initialize a Hibernate JPA proxy to use it in a JSON call
问题描述
我有一个Spring 3 + JPA 2.0应用程序。在我的 @Controller
中,我需要一个初始化的对象,但我有代理,我需要能够以编程方式初始化它。我需要类似于 org.hibernate.Hibernate.initialize(Object)
的功能。
有人可以帮忙吗?该对象用于AJAX操作。如果属性是代理服务器,我无法将其作为JSON发送。
解决方案 没有JPA选项。你应该使用 Hibernate.initialize(..)
。
实际上,当我看看hibernate实现时,懒惰集合似乎在许多情况下被初始化,这是人们所不希望的。像 entityManager.contains(..)
和 Persistence.getPersistenceUtil()。isLoaded(...)
。试一试,但我认为你不应该依赖这样的实现细节。
I have a Spring 3 + JPA 2.0 application. In my @Controller
I need an initialized object, but I have proxies , I need to be able to initialize it programmatically. I need functionality similar to org.hibernate.Hibernate.initialize(Object)
.
Can someone help . The object is used for AJAX operations. If the properties are proxies I cannot send it as JSON
No JPA option to my knowledge. You should use Hibernate.initialize(..)
.
In fact, when I took a look at the hibernate implementation, lazy collections appear to be initialized in many cases that one wouldn't expect. Like entityManager.contains(..)
and Persistence.getPersistenceUtil().isLoaded(...)
. Give these a try, but I don't think you should rely on such implementation details.
这篇关于如何强制初始化Hibernate JPA代理以在JSON调用中使用它的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!