gpt4 book ai didi

hibernate - 如何为单个 session 启用 hibernate.order_inserts 属性

转载 作者:行者123 更新时间:2023-12-04 05:51:15 24 4
gpt4 key购买 nike

我要启用 hibernate.order_inserts为了改进我的批量插入操作。
如我所见,这是 session 工厂级别的属性。但是,我认为为我的应用程序执行的所有插入操作启用此类属性有点冒险。
是否有启用 hibernate.order_inserts 的选项单个 session 的属性?

最佳答案

搜索hibernate源代码后,当SessionFactoryConfiguration.buildSessionFactory() build , SettingsFactory.buildSettings()将在内部调用以将 hibernate 配置属性解析为 Settings实例。 hibernate.order_inserts将大步走进orderInsertsEnabled Settings 的属性(property)实例。

Settings然后将实例传递给 SessionFactoryImpl 的构造函数这是 SessionFactory 的实现并将其分配给其内部 settings properties .此 settings property声明为 final它的值一旦设置就无法更改。
orderInsertsEnabled Settings 的属性(property)通过 getter isOrderInsertsEnabled() 暴露给客户端.再次搜索代码并确认只有一个地方( ActionQueue.sortActions() )可以调用 Settings 的这个 getter实例完全来自 SessionFactoryImpl

因此,我认为没有任何选项可以更改 hibernate.order_inserts在运行时,无论是 session 工厂级别还是 session 级别。所以你必须用 hibernate.order_inserts 创建另一个 session 工厂设置以实现您的目的。

关于hibernate - 如何为单个 session 启用 hibernate.order_inserts 属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10009920/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com