像这样定义 JPA 实体时:
@Entity
@Table
public class CaseExample implements Serializable {
@Id
Long id;
@Basic
String fooBar;
}
自动创建的 SQL 表名称为“CASEEXAMPLE”,列名称为“FOOBAR”。 如何将其从大写更改为带下划线的小写,例如“case_example”和“foo_bar”无需向每个 @Table 和 @Column 添加 name="foo_bar"?
命名策略是由 JPA 定义还是依赖于实现?我将 JPA 2.0 与 EclipseLink 2.5.0 结合使用。
最佳答案
JPA 标准化了名称。我会让它们使用标准,或者使用 @Column 来更改特定的。
通过 EclipseLink,您可以在 DescriptorCustomizer 或 SessionCustomizer 中使用您自己的代码修改列名称。您只需迭代描述符的映射并根据您的命名约定重置 fieldNames。
关于java - 使用 EclipseLink 将 @Table 和 @Column 的命名策略更改为小写,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18667089/