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文件等。