Java 比较JPA注释

Java 比较JPA注释,java,jpa,annotations,Java,Jpa,Annotations,我需要检查一个实体是否有一些特定的注释(@ElementCollection和@JoinColumn) 但是如果是这样的话,我如何检查是否有@JoinColumn?(a@JoinColumn“内”a@CollectionTable) @ElementCollection @CollectionTable(name=“报警计划ID”,joinColumns={ @JoinColumn(name=“ALARM\u ID”,referencedColumnName=“INST\u ID”), @Joi

我需要检查一个实体是否有一些特定的注释(@ElementCollection和@JoinColumn)

但是如果是这样的话,我如何检查是否有@JoinColumn?(a@JoinColumn“内”a@CollectionTable)

@ElementCollection
@CollectionTable(name=“报警计划ID”,joinColumns={
@JoinColumn(name=“ALARM\u ID”,referencedColumnName=“INST\u ID”),
@JoinColumn(name=“ALARM\u ID\u AK”,referencedColumnName=“INST\u ID\u AK”)})
保护集AllPlanids不存在;

谢谢

注释
对象上使用反射(例如
getDeclaredMethods
)。这将显示子对象的getter。从那以后,你可以做任何你需要的事

for(Annotation annotation : field.getAnnotations())
{
if (annotation.equals("@ElementCollection") || annotation.equals("@JoinColumn"))
     //do something
}
}
@ElementCollection
@CollectionTable(name = "ALARM_PLAN_IDS", joinColumns = {
        @JoinColumn(name = "ALARM_ID", referencedColumnName = "INST_ID"),
        @JoinColumn(name = "ALARM_ID_AK", referencedColumnName = "INST_ID_AK") })
protected Set<InstanceId> allPlanIdsInExistence;