使用JPA注释时是否需要遵循bean命名约定?

时间:2015-06-29 21:57:43

标签: java hibernate jpa

如果我使用JPA的注释来指定我的映射字段,如下所示:

public class PersistedEmployee {
  private Integer id;

  @Id//Plus some @GeneratedValue cruft in the real example
  public Integer getId() {
    return id;
  }
  public void setId(final Integer id) {
    this.id = id;
  }
}

该ID 是否需要遵循getFoo bean命名约定?或者注释是否足以识别如何映射此POJO?

在这种情况下,底层提供程序是Hibernate,但我也很好奇是否会产生影响。

2 个答案:

答案 0 :(得分:0)

JPA支持两种访问属性的方法。通过吸气剂和制定者或通过反射直接访问该领域。

如果你使用第一个,getter和setter需要遵循正确的命名约定,如果你使用第二个,它们不必存在,你可以使用你喜欢的任何访问者/ mutator。

使用的访问类型由放置@id注释的位置定义。如果它在字段上,则使用字段访问。如果它在getter / setter属性上,则使用访问权限。

答案 1 :(得分:0)

JPA规范。

The persistent state of an entity is accessed by the persistence provider
runtime either via JavaBeans style property accessors (“property 
access”) or via instance variables (“field access”).

它是公开可用的,所以如果使用JPA,你真的应该得到它,或者出现它的书籍/文档。