获取指定Annotation中的内容

package com.sohu.test;

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

/**
 * @author qiaowang
 * @date 2014-4-18 上午10:34:13
 */
@Retention(value=RetentionPolicy.RUNTIME)
public @interface MyDefaultAnnotationReflect {

    public String key() default "WQO";
    
    public String value() default "王侨";
}


package com.sohu.test;

/**
 * @author qiaowang
 * @date 2014-4-18 上午10:37:51
 */
public class SimpleBeanTwo {

    @MyDefaultAnnotationReflect(key = "wangqiao", value = "test one time")
    public String toString() {
        return "Hello World";
    }
}




package com.sohu.test;

import java.lang.reflect.Method;

/**
 * @author qiaowang
 * @date 2014-4-18 上午10:36:42
 */
public class ReflectDemo {

    /**
     * @author qiaowang
     * @date 2014-4-18 上午10:36:42
     * @param args void
     * @throws ClassNotFoundException
     * @throws NoSuchMethodException
     * @throws SecurityException
     */
    public static void main(String[] args) throws ClassNotFoundException, SecurityException, NoSuchMethodException {

        Class<?> c = null;
        c = Class.forName("com.sohu.test.SimpleBeanTwo");
        Method toM = c.getMethod("toString");
        if (toM.isAnnotationPresent(MyDefaultAnnotationReflect.class)) {
            MyDefaultAnnotationReflect mda = null;
            mda = toM.getAnnotation(MyDefaultAnnotationReflect.class);
            String key = mda.key();
            String value = mda.value();
            System.out.println("key=" + key);
            System.out.println("value=" + value);
        }
    }

}

猜你喜欢

转载自wangqiaowqo.iteye.com/blog/2048214
今日推荐