gpt4 book ai didi

java - 向 Java 类添加编程注释

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:36:30 26 4
gpt4 key购买 nike

使用示例:
我想在类字段上放置一个自定义注释 @MyContainer,然后在所有此类字段上自动添加相关的 Hibernate 注释(取决于字段类型和属性)。
此外,我需要向类添加 JAXB XmlType 注释,并将类型名称基于类名称。
我还想根据他们的类型等向字段添加注释。所有添加的注释都应该在运行时可用(这样 hibernate/JAXB 可以找到它们)。
我知道以下选项:

  1. 预处理类源码(错误选项)
  2. 在编译期间使用 javax.annotation.processing API 进行处理
  3. 使用 Java Assist 等工具进行编译后操作
  4. 使用 java.lang.instrument API 加载类期间的操作
  5. 用 AspectJ 做(不够强大)

我的主要目标是:

  1. 保持类和源代码同步以进行调试
  2. 支持 Maven 和 IDE (Eclipse/Intellij) 工作

如果已经做过此类事情的人可以推荐完成此类任务的最佳方法(可能还有潜在的陷阱),我将不胜感激。

最佳答案

这是定义自定义注释的代码示例。此 @TesterInfo 应用于类级别,存储测试人员详细信息。这显示了返回类型的不同用法——枚举、数组和字符串。

package com.mkyong.test.core;

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

@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.TYPE) //on class level
public @interface TesterInfo {

public enum Priority {
LOW, MEDIUM, HIGH
}

Priority priority() default Priority.MEDIUM;

String[] tags() default "";

String createdBy() default "Mkyong";

String lastModified() default "03/01/2014";

}

关于java - 向 Java 类添加编程注释,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11598333/

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