Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/jpa/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 是否可以创建一个组合注释来组合多个字段注释?_Java_Jpa_Annotations - Fatal编程技术网

Java 是否可以创建一个组合注释来组合多个字段注释?

Java 是否可以创建一个组合注释来组合多个字段注释?,java,jpa,annotations,Java,Jpa,Annotations,我的JPA实体中有一些布尔字段,它们以以下方式进行注释: @Column(length = 1) @Type(type = "yes_no") private final boolean myField; 是否可以创建一个组合注释(例如MyAnnotation)来组合这两个注释 @MyAnnotation private final boolean myField; 如何创建?显然,您可以创建一个注释,提供与多个其他注释等效的注释 同样明显的是,没有JPA提供商会支持它,因为他们只会检查ja

我的JPA实体中有一些布尔字段,它们以以下方式进行注释:

@Column(length = 1)
@Type(type = "yes_no")
private final boolean myField;
是否可以创建一个组合注释(例如MyAnnotation)来组合这两个注释

@MyAnnotation
private final boolean myField;

如何创建?

显然,您可以创建一个注释,提供与多个其他注释等效的注释


同样明显的是,没有JPA提供商会支持它,因为他们只会检查javax.persistence注释(不是@Type是javax.persistence)。

您想要的与之类似-不幸的是,JPA不支持这样的概念,因此您必须复制所有重复出现的注释


如果您可以将字段包装到对象中,您可以将其标记为并将字段放入对象中-该字段上的注释将复制到将该对象嵌入实体的任何位置。您可以使用
@AnnotationOverrides
扩展注释。显然,这种解决方案的缺点是在访问实体中的字段时会增加复杂性。

我过去和现在都不确定是否可能在语法上为字段注释创建组合注释(我问题的核心),但我想,如果JPA提供商无论如何都不会识别这样的注释,我就不必再考虑它了。谢谢你的回答!