栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

如何使用Hibernate JPA和Spring Framework启用加载时间/运行时编织

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

如何使用Hibernate JPA和Spring Framework启用加载时间/运行时编织

经过大量的代码阅读和调试,我弄清楚了。Hibernate ORM文档不包含此信息真是可惜。(公平地讲,Hibernate
EntityManager文档
可以,但是并不容易找到。有关“使用惰性属性获取”的Hibernate指令只说:“惰性属性加载需要构建时字节码检测。”
没有 提及您可以使用 运行时 检测。带有Hibernate EntityManager属性。)

您必须做的第一件事是将

"hibernate.ejb.use_class_enhancer"
JPA属性设置为
"true"
String
)。这告诉Hibernate,它可以通过调用使用“应用程序服务器”一类变换
addTransformer
PersistenceUnitInfo
实例。“应用服务器”类的转换实际上是Spring的
LoadTimeWeaver
。如果您使用Spring的Java配置和
LocalContainerEntityManagerFactoryBean
,并且Hibernate是编译时依赖项,则可以使用
AvailableSettings.USE_CLASS_ENHANCER
常量而不是字符串字面量
"hibernate.ejb.use_class_enhancer"
(这将使其具有抗错字性)。

如果您使用的是Spring的Java配置,则必须执行其他步骤,直到修复SPR-10856。不会自动调用

LocalContainerEntityManagerFactoryBean
setLoadTimeWeaver
方法,因此您必须手动调用它。在您的
@Configuration
课程中,只需创建实例
@Inject
或实例,然后在创建时手动调用。
@Autowire``LoadTimeWeaver``setLoadTimeWeaver``LocalContainerEntityManagerFactoryBean

完成这些步骤后,我现在将Hibernate的运行时实体字节码检测与Tomcat中的Spring framework结合使用。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/397698.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号