我试图找出JPA在没有明确名称设置时使用的列名。
示例:
@Entity
public class TestType {
private Boolean active;
private Character testTypeCode;
public Boolean getActive() {
return active;
}
public void setActive(Boolean active) {
this.active = active;
}
@Id
public Character getTestTypeCode() {
return testTypeCode;
}
public void setTestTypeCode(Character testTypeCode) {
this.testTypeCode = testTypeCode;
}
}
主键列将使用什么名称,哪个列名将用于属性" active"以及将使用的表名。我正在寻找JPA默认使用的名称的规范。
答案 0 :(得分:1)
“2.13数据库对象命名”一章指定了(JPA 2.0 spec)。
本规范要求如下 解释引用数据库对象的名称。这些名字 包括表,列和其他数据库元素的名称。 这些名称还包括因违约而产生的名称(例如,a 从实体名称或列名称默认的表名称 是默认的字段或属性名称。)
在您的示例中,表名称为TestType
,ID列名称为testTypeCode
,活动列的调用方式相同。还请注意,在SQL标准中,所有列和表名都不区分大小写,尽管有一些反例(例如Unix上的MySQL:表名区分大小写)。