我可以将注释注入pojo吗?

时间:2016-06-15 20:12:55

标签: java reflection annotations introspection

假设我有一个看起来像这样的POJO。

public class SomeDataClass {

    @SomeProperty1
    String myField1;

    @SomeProperty1
    String myField2;

    ...

    getters()... 
    setters()... // you know the drill

}

我希望能够合成地将注释注入实例化对象。新POJO,如果我用反射检查它,实际上看起来像这样:

public class SomeDataClass {

    @SomeProperty1
    String myField1;

    @SomeProperty1
--> @SomeProperty2 <--- the logic flow would change depending on whether this annotation is present
    String myField2;

    ...

    getters()... 
    setters()... // you know the drill

}

这可能吗?我怎么能做到这样的事情?

1 个答案:

答案 0 :(得分:0)

Annotations只是语法元数据提供程序......

所以你应该通过反射得到给定类中声明的字段的名称,并使用所需的标准来区分哪个字段需要@SomeProperty2提供的信息,之后在运行时从@SomeProperty2添加信息只是正常使用setter或getter ...