Addition
本文主要介绍Addition类的使用方法,开发者不可将Addition类和Addition注解混淆。
在学习使用Addition之前,开发者应该先了解Addition注解和HandlerInterceptor类。
Addition类的属性对应的是Addition注解的参数。
示例
我们在一个Http Api的方法上添加Addition注解,增加一些附加信息:
@RestController
class UserController {
@Addition(stringType = "needLogin", booleanType = true)
@GetMapping(path = "/get")
UserInfo userInfo() {
...
}
}
然后可以在HandlerInterceptor中获取这些附加信息:
```java
@Interceptor
public class LoginInterceptor implements HandlerInterceptor {
@Override
public boolean onIntercept(HttpRequest request, HttpResponse response,
RequestHandler handler) {
if (handler instanceof MethodHandler) {
MethodHandler methodHandler = (MethodHandler)handler;
Addition addition = methodHandler.getAddition();
...
}
...
}
}
注意:必须先判断
RequestHandler是不是MethodHandler,只有MethodHandler才是Controller中的方法,其它可能是网页、CSS文件等。