alex safsafsd Asked:2020-08-28 15:40:41 +0000 UTC2020-08-28 15:40:41 +0000 UTC 2020-08-28 15:40:41 +0000 UTC @Access 中的 AccessType.FIELD 和 AccessType.PROPERTY 的用途是什么? 772 AccessType.FIELD这些注解是干什么用的, and的优缺点是什么AccessType.PROPERTY。你能解释一下吗。 java 1 个回答 Voted Best Answer Anton Sorokin 2020-08-28T16:22:40Z2020-08-28T16:22:40Z 哈布尔: 需要@Access 来确定实体类、超类、可嵌入或单个属性的访问类型,即 JPA 将如何访问实体属性,作为类字段 (FIELD) 或作为具有 getter (getter) 的类属性 (PROPERTY)和二传手(二传手)。 如果您希望您的字段可以作为常规字段访问,但您希望使用 getter 或 setter 访问一个字段,您可以提供@Access. 这个注解有两种模式:AccessType.FIELD和AccessType.PROPERTY。AccessType.PROPERTY我们可以使用或AccessType.FIELD在@Access注解中明确指定访问类型。我们可以@Access在类级别、字段或方法上使用。我们甚至可以在同一个实体类中混合两种类型。 从enSO 的答案中翻译答案: 默认情况下,访问类型由您的 identifier( @ Id) 所在的位置决定。如果它在字段中,它将是 AccessType.FIELD,如果它在 getter 中,它将是 AccessType.PROPERTY。 有时您可能想要注释属性而不是字段(例如,因为您希望在 getter 中有一些任意逻辑,或者因为您更喜欢这种方式)。在这种情况下,您必须定义一个 getter 并将其注释为AccessType.PROPERTY. 概括:您可以使用注释AccessType.FIELD进行“常规”字段访问,并使用注释AccessType.PROPERTY通过get/set进行字段访问。
哈布尔:
如果您希望您的字段可以作为常规字段访问,但您希望使用 getter 或 setter 访问一个字段,您可以提供
@Access. 这个注解有两种模式:AccessType.FIELD和AccessType.PROPERTY。AccessType.PROPERTY我们可以使用或AccessType.FIELD在@Access注解中明确指定访问类型。我们可以@Access在类级别、字段或方法上使用。我们甚至可以在同一个实体类中混合两种类型。从enSO 的答案中翻译答案:
概括:您可以使用注释
AccessType.FIELD进行“常规”字段访问,并使用注释AccessType.PROPERTY通过get/set进行字段访问。