在使用 JPA 表生成策略时,我们需要在 @TableGenerator 中提及分配大小。默认值为 50。我们要覆盖默认分配大小。
但是需要在每个实体中提及分配大小。是否有任何其他更好的方法来执行此操作(例如全局配置或将其配置为用于跟踪生成的 Id 的表中的附加列)
如这些帖子中所述,使用普通 JPA 这似乎是不可能的:
如何在 persistence.xml 而不是 Entity 中配置 allocationSize
看来EclipseLink
JPA 实现确实为您提供了使用“SessionCustomizer”全局设置此元素的能力
我找到了使用休眠@genericgenerator 的解决方法。我们可以通过从表中获取分配大小然后重新配置 idgenerator 来覆盖分配大小