获取注解字段的类作为自定义注解的默认值

dauxcl2d  于 2021-06-29  发布在  Java
关注(0)|答案(0)|浏览(345)

我已经开始编写一些注解,以便更容易地为一些bukkit插件中的信息定义模型类。
简单地说,我现在有两个注解,叫做 @Model 以及 @Field . 一种是将类标记为某些信息的模型,另一种是将字段标记为转置到数据库列中:
字段:

  1. import java.lang.annotation.ElementType;
  2. import java.lang.annotation.Retention;
  3. import java.lang.annotation.RetentionPolicy;
  4. import java.lang.annotation.Target;
  5. @Retention(RetentionPolicy.RUNTIME)
  6. @Target(ElementType.FIELD)
  7. public @interface Field {
  8. public Class type();
  9. }

型号:

  1. import java.lang.annotation.ElementType;
  2. import java.lang.annotation.Retention;
  3. import java.lang.annotation.RetentionPolicy;
  4. import java.lang.annotation.Target;
  5. @Retention(RetentionPolicy.RUNTIME)
  6. @Target(ElementType.TYPE)
  7. public @interface Model {
  8. }

我为测试目的创建了一个类,该类使用以下注解:

  1. import bukkitutils.sql.Field;
  2. import bukkitutils.sql.Model;
  3. @Model
  4. public class ExampleModelClass {
  5. @Field(type = String.class)
  6. private String exampleStringField = "default value";
  7. }

这似乎工作得很好,我可以传递一个类作为注解属性。我的问题是:
如何使此属性的默认值为 String.class ,所以如果希望属性与字段是同一个类,就不必指定它。?
我知道我可以用例如。 public String exampleString() default "exampledefault" ,但如何才能获得该领域的类呢?

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题