用于java注释的用例等

时间:2012-07-17 03:58:29

标签: java xml reflection configuration annotations

据我所知,使注释生效的唯一方法是反思。没有反射,java注释变得无用。这是对的吗?

public class Main{
    @SomeAnnotation(name="some",value="annotation")
    public void method(){
        //do something.
    }
    public static void main(String...args){
        Main main = new Main();
        //Just call the method directly, How to make the @SomeAnnotation make sense?
        main.method();
    }
}

例如,您首先获取一个java Method对象,然后检查所有提供的注释。如果你得到了你想要的东西,那么通过反射来调用方法。例如

Method.invoke(Object, Object...args) 

人们说注释可以减少繁琐的XML,但是回到XML配置,使用模式就像我们加载和解析XML文件一样,当我们调用某些方法时,我们首先得到或检查配置信息,然后做真实的东西。如何通过Annotation实现这一目标?我们得到的唯一方法是反思?

1 个答案:

答案 0 :(得分:2)

注释的RetentionPolicy(它本身被声明为元注释)向您显示annotations不仅用于反射,还用于编译或构建时(如同{{} 3}})。

如果您需要用于理解注释处理的示例代码,可以在annotation processing tool的末尾(通过检查另一个测试类的小程序)获得。