[英]Java Spring : how can I encapsulate annotations within an other annotation?
[英]Java annotation that summarizes other annotations
我想為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的目標是字段和方法。 如果刪除@Embedded並單獨使用,則將忽略@EmbeddAdministrativeData批注。 正確的方法是什么?
JPA 2.2按照此鏈接支持“元注釋”。 然后歸結為您的JPA提供程序是否支持JPA 2.2(例如,我使用的是這些文檔所針對的)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.