OpenJPA中EJB实体管理器下多实体共享同一序列的技术问询
共享JPA实体基类配置方案
嘿,我帮你把项目里的JPA抽象基类和实体类配置整理成清晰的Markdown格式了,方便你查看和复用:
1. 抽象基类定义
这个基类是所有实体的父类,统一配置了主键生成策略:
@MappedSuperclass public abstract class AbstractClass<PK extends Serializable> implements Serializable { public static final String GENERATOR = "default"; @Id @GeneratedValue(strategy = GenerationType.SEQUENCE, generator = GENERATOR) private PK id; // 此处省略id的setter和getter方法 }
2. 实体类示例(统一注解配置)
所有实体都继承上面的抽象基类,并且使用相同的注解配置规范,下面是其中一个实体的示例:
@Entity @Table(name = "TABLE1") @SequenceGenerator(name = AbstractClass.GENERATOR, sequenceName = "TABLE1_SEQ", allocationSize = 1) public class Table1Entity extends AbstractClass<Long> { // 此处添加实体专属的字段、业务方法及对应的getter/setter }
说明:所有实体都会遵循这个模式——继承*
AbstractClass*并指定具体的主键类型,同时通过复用基类的GENERATOR常量来统一序列生成器的名称,每个实体只需要指定自己对应的序列名称即可。
内容的提问来源于stack exchange,提问作者maqjav
相关产品推荐
相关产品推荐

