gpt4 book ai didi

hibernate - JPA 和 Hibernate 如何管理序列?

转载 作者:行者123 更新时间:2023-12-03 18:04:35 26 4
gpt4 key购买 nike

我在我的项目中使用 Hibernate,并且我的许多实体使用序列作为他们的技术 key 。
例如:

@Entity
@Table(name = "T_MYENTITY")
@SequenceGenerator(name = "S_MYENTITY", sequenceName = "S_MYENTITY")
public class MyEntity {

@Id
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "S_MYENTITY")
@Column(name = "MY_ENTITY_ID")
private Long entityId;

...

}

我有两个关于持久化这个类的新对象时Hibernate生成的ID的问题:
  • 为什么 SequenceGenerator(来自 javax.persistence)将 allocationSize 的默认值设置为 50 而不是 1?这样做有什么好处?
  • Hibernate 用于计算生成的 ID 的默认算法是什么?似乎 Hibernate 使用了由我的 Oracle 数据库托管的序列返回的值,但是在将其分配给我的实体之前对其进行了修改...
  • 最佳答案

  • 这是出于性能原因(预取)
  • 阅读 hibernate 源代码。
  • 关于hibernate - JPA 和 Hibernate 如何管理序列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/464484/

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