1、注解在我的理解中,像一个标记物,将类, 属性, 方法等打上标签,能够利用java的某些特性(如java 反射)获取到是否具有这些特性,并能够获取到注解的属性值。
2、 在拦截器中能够获取到请求访问的方法对象, 并通过该对象获取到该方法具有的注解。如下:
HandlerMethod handlerMethod = (HandlerMethod) o;
Method method = handlerMethod.getMethod();
Annotation annotation = method.getAnnotation(注解类);
通过这种方法可以对请求方法进行不同的预处理, 如权限控制, 登录验证等。
tips:
元注解有4种
1、@Retention 表明注解的生命周期 (RetentionPolicy.RUNTIME、RetentionPolicy.CLASS、RetentionPolicy.SOURCE)
2、@Target 表明注解的作用对象
3、@Inherited 表明注解是否可以被继承
4、@Documented 表明注解是否会出现在javadoc中