Get annotation information through reflection
•
Java
Example 1
/**
* 这是自定义注解的类
*/
@Target({ ElementType.TYPE,ElementType.METHOD })
@Retention(RetentionPolicy.RUNTIME)
@Documented
public @interface MyRequestMapping {
String value(); // 这是注解的一个属性字段,也就是在使用注解时填写在括号里的参数
}
@MyRequestMapping("/test")
public class TestController {
public void test() {
System.out.println("进入Test方法");
}
}
public class Test {
public static void main(String[] args) {
Class<?> c = TestController.class;
MyRequestMapping baseRequestMapping = c.getAnnotation(MyRequestMapping.class);
System.out.println(baseRequestMapping.value()); // 输出value的值
}
}
Example 2
@Target({ ElementType.TYPE })
@Inherited
@Retention(RetentionPolicy.RUNTIME)
public @interface Person {
String value();
}
@MyRequestMapping("/test")
@Person("C")
public class TestController {
public void test() {
System.out.println("进入Test方法");
}
}
public class Test {
public static void main(String[] args) {
Class<?> c = TestController.class;
Annotation[] atnsArray = c.getAnnotations();
for (Annotation an : atnsArray) {
System.out.println(an);
}
}
}
@MyRequestMapping(value=/test) @Person(value=C)
The content of this article comes from the network collection of netizens. It is used as a learning reference. The copyright belongs to the original author.
THE END
二维码
