java – 如何在hibernate中启用批量插入?
发布时间:2020-12-14 05:34:34 所属栏目:Java 来源:网络整理
导读:使用hibernate,当我尝试启用批量插入 property name="jdbc.batch_size"50/property 我得到以下输出: [...] cfg.SettingsFactory INFO - JDBC batch updates for versioned data: disabled [...] cfg.SettingsFactory INFO - Order SQL inserts for batching
使用hibernate,当我尝试启用批量插入
<property name="jdbc.batch_size">50</property> 我得到以下输出: [...] cfg.SettingsFactory INFO - JDBC batch updates for versioned data: disabled [...] cfg.SettingsFactory INFO - Order SQL inserts for batching: disabled 然后这个: [...] jdbc.AbstractBatcher DEBUG - Executing batch size: 1 从不超过批量:1基本. 我错过了一个设置? 解决方法
到
enable batching for both INSERT and UPDATE statements,您需要设置以下所有Hibernate属性:
<property name="hibernate.jdbc.batch_size">30</property> <property name="hibernate.order_inserts">true</property> <property name="hibernate.order_updates">true</property> <property name="hibernate.jdbc.batch_versioned_data">true</property> 如果您可以使用SEQUENCE<那么你不应该使用IDENTITY发电机,因为it disables batch fetching. 如果您不能使用SEQUENCE(例如MySQL),请尝试使用单独的机制来启用批量插入(例如jOOQ),而不是使用不会缩放并具有高性能损失的TABLE生成器. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |