我正在使用休眠 JPA。我想扩展一个包含我的 pk 生成器和一些哈希等于代码的基类,但是我的公司正在使用 table_name_id 来描述物理数据库中的 ID,这似乎是不可能的。刚刚有人告诉我,我可以使用休眠命名策略来动态地将表名添加到我的变量前面,但是我还没有找到一个很好的例子来说明如何实现这一点。有人可以向我指出一些有关如何实现此目的的示例代码或文档。
超类
@MappedSuperclass
public abstract class Base implements Serializable {
@Id
@GeneratedValue(strategy = AUTO)
@Column(name="ID", nullable = false)
private Integer id;
....
}
A子类
@Entity
@Table(name="TABLE_A")
public class TableA extends Base {
// physical model needs base pk id to be prefixed with table_a resulting in table_a_id.
...
}
子类 B
@Entity
@Table(name="TABLE_B")
public class TableB extends Base {
// physical model needs base pk id to be prefixed with table_b resulting in table_b_id.
...
}