基本上,我想要一个 @MappedSuperclass 为所有扩展实体定义代理 id 生成:
@MappedSuperclass
public class BaseEntity {
@Id
@GeneratedValue(strategy = GenerationType.TABLE)
private Long id;
...
}
如果我有 3 种类型的具体实体,EntityA、EntityB 和 EntityC,我希望看到如下所示的 SEQUENCE_TABLE:
SEQUENCE_NAME | NEXT_VAL
--------------------------
EntityA 11
EntityB 31
EntityC 101
...每个序列都是独立的,仅用于其对应的实体。使用 DataNucleus 可以轻松实现这样的事情吗?理想情况下,我想避免为每个@Entity 声明一个@TableGenerator。Hibernate 使用“prefer_sequence_per_entity”属性提供了这种行为,但我更喜欢 DataNucleus 的其他一些功能。