【发布时间】:2015-06-17 06:43:12
【问题描述】:
我使用 Spring Data JPA 和 Hibernate 作为持久性提供程序进行了以下设置。我所有的实体都继承自一个基类
@MappedSuperclass
public class BaseEntity {
@Id
private id;
@Version
private String version;
//more common fields
}
例如:
@Entity
public class Foo extends BaseEntity {
}
这会导致在“FOO”表上生成一个名为“ID”的主键列。我想更改主键列的命名。它应该反映类或表的名称。所以它应该是“FOO_ID”而不是“ID”。
我知道我可以使用@Column(name = "FOO_ID") 静态地执行此操作。但这意味着我必须为每个实体都这样做。有没有更动态的方法来实现这一点?
【问题讨论】: