gpt4 book ai didi

总结其他注解的Java注解

转载 作者:太空宇宙 更新时间:2023-11-04 11:07:44 27 4
gpt4 key购买 nike

我想为 JPA 实体字段创建一个注释,其中总结了一些其他注释。这是我想创建的注释:

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

import javax.persistence.AttributeOverride;
import javax.persistence.AttributeOverrides;
import javax.persistence.Column;
import javax.persistence.Embedded;

@Target(value = {ElementType.FIELD, ElementType.METHOD})
@Retention(RetentionPolicy.RUNTIME)
@Embedded
@AttributeOverrides({
@AttributeOverride(name = "createdAt", column = @Column(name = "created_at", columnDefinition = "TIMESTAMP WITH TIME ZONE")),
@AttributeOverride(name = "lastChangedAt", column = @Column(name = "last_changed_at", columnDefinition = "TIMESTAMP WITH TIME ZONE")),
@AttributeOverride(name = "lastChangedBy", column = @Column(name = "last_changed_by")),
@AttributeOverride(name = "createdBy", column = @Column(name = "created_by")) })
public @interface EmbeddAdministrativeData {

}

但这会在 @Embedded 处产生语法错误,因为 @Embedded 的目标是 Field 和 Method。如果我删除 @Embedded 并单独使用它,则 @EmbeddAdministrativeData 注释将被忽略。执行此操作的正确方法是什么?

最佳答案

JPA 2.2 按照 this link 支持“元注释” 。然后就取决于您的 JPA 提供程序是否支持 JPA 2.2(例如,我使用的 JPA 提供程序,这些文档就是支持 JPA 2.2 的)。

关于总结其他注解的Java注解,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46325190/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com