1、定义一个自定义注解
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.METHOD)
public @interface Token {
boolean create() default false;
boolean remove() default false;
}
2、使用注解
public class TokenHandle {
@Token(create = true, remove = true)
public void handle(String value) {
System.out.print("value :" + value);
}
}
3、利用反射获取注解的值
@Test
public void testTokenAnnotation() {
Class tokenClass = TokenHandle.class;
try {
Method method = tokenClass.getMethod("handle", String.class);
Token annotation = method.getAnnotation(Token.class);
boolean create = annotation.create();
boolean remove = annotation.remove();
assertTrue(create);
assertTrue(remove);
} catch (NoSuchMethodException e) {
e.printStackTrace();
}
}
网友评论