【发布时间】:2013-10-16 09:20:50
【问题描述】:
我看到了一个实体的 @javax.persistence.Access(javax.persistence.AccessType.FIELD)。 这是什么意思?是否真的需要为实体声明@Access this。
【问题讨论】:
标签: java jpa jakarta-ee
我看到了一个实体的 @javax.persistence.Access(javax.persistence.AccessType.FIELD)。 这是什么意思?是否真的需要为实体声明@Access this。
【问题讨论】:
标签: java jpa jakarta-ee
不,这不是必需的,但可能很有用。 @Access 用于指定 JPA 必须如何访问(获取和设置)实体的映射属性。如果访问类型设置为 FIELD,值将直接在字段上读取/设置,绕过 getter 和 setter。如果设置为 PROPERTY,则 getter 和 setter 用于访问字段值。
默认情况下(至少在 Hibernate 中),如果 @Id 注释在字段上,则使用 FIELD,如果 @Id 注释在 getter 上,则使用 PROPERTY。
【讨论】: