Java 配置id序列休眠生成器
我是否可以将Hibernate配置为在实际插入之前不将select seq.nextval from dual作为单独调用Java 配置id序列休眠生成器,java,oracle,hibernate,Java,Oracle,Hibernate,我是否可以将Hibernate配置为在实际插入之前不将select seq.nextval from dual作为单独调用 org.hibernate.jdbc.AbstractBatcher about to open PreparedStatement (open PreparedStatements: 0, globally: 0) org.hibernate.SQL select SEQUENCE_1.nextval from dual org.hibernate.id.Sequen
org.hibernate.jdbc.AbstractBatcher about to open PreparedStatement (open PreparedStatements: 0, globally: 0)
org.hibernate.SQL select SEQUENCE_1.nextval from dual
org.hibernate.id.SequenceGenerator auditor50 - Sequence identifier generated: 122797
org.hibernate.jdbc.AbstractBatcher auditor50 - about to close PreparedStatement (open PreparedStatements: 1, globally: 1)
<class..>
<id column="ID" name="id" type="long">
<generator class="sequence">
<param name="sequence">SEQUENCE_1</param>
</generator>
</id>
</class>
org.hibernate.jdbc.AbstractBatcher即将打开PreparedStatement(打开PreparedStatements:0,全局:0)
org.hibernate.SQL从dual中选择SEQUENCE_1.nextval
org.hibernate.id.SequenceGenerator auditor50-生成的序列标识符:122797
org.hibernate.jdbc.AbstractBatcher auditor50-即将关闭PreparedStatement(打开PreparedStatements:1,全局:1)
序列1
我认为这是不可能的。但我不知道这会有什么不同。如果出于性能原因要执行此操作:
那么它如何获得要插入的值呢?插入到表(ID)中的值(SEQUENCE.NEXTVAL);我不确定这是否会停止当前行为,但如果数据库中的默认值是
SEQUENCE.NEXTVAL
?1会怎么样。我还没有真正测量它,但我在每个事务中插入200多行2。对我来说,它每插入一行,而不是每插入50行2。我的错误。当通过注释进行配置时,序列生成器实际上就是seqhilo生成器。对于XML,必须使用class=“seqhilo”而不是class=“sequence”