内省 - Hibernate 管理的对象的表名 (JavassistLazyInitializer)
我想通过内省获得 Hibernate 管理的对象的表名(惰性)。
我的对象在属性处理程序中包含“org.hibernate.proxy.pojo.javassist.JavassistLazyInitializer”。
我的对象的类型为“mypackage.myObjectDO_ _javassist_2 $ $”,并且不包含类“mypackage.myObjectDO”包含的注释(我寻找注释javax.persistence.Table)。
我该怎么办?
I want to get through introspection the table name of an object managed by Hibernate (in lazy).
my object contains "org.hibernate.proxy.pojo.javassist.JavassistLazyInitializer" in the property handler.
my object is of type "mypackage.myObjectDO_ _javassist_2 $ $" and does not contain the annotations that the class "mypackage.myObjectDO" contains (I seek the annotation javax.persistence.Table).
How can I do?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
这是一个不寻常的需求(Hibernate 应该将其抽象化),但假设您确实需要它......
您必须取消代理代理。这是以前的答案(来自 Bozho):
另请参阅将代理对象转换为真实对象 Hibernate 论坛。
This is an unusual need (Hibernate is supposed to abstract that away) but let's say you really need it...
You'll have to unproxy the proxy. Here is a little method from a previous answer (from Bozho):
See also Converting proxy object to the real thing in the Hibernate forums.