我创建了一个自定义注释和HandlerInterceptorAdapter,它们将仅获取memberNo并将其打印出来。
@Target({ElementType.METHOD, ElementType.TYPE})
@Retention(RetentionPolicy.RUNTIME)
@Documented
public @interface MyCustomAnnotation
{
String memberNo();
}
在控制器上,如下所示:
@MyCustomAnnotation(memberNo = "${someBodyObject.memberNo}")
@RequestMapping(value = "/test/", method = RequestMethod.GET)
public String test(@RequestBody SomeBodyObject someBodyObject) {
System.out.println("--- TEST ---");
return "-- FINISHED ---";
}
请求主体SomeBodyObject提交了一个文件,它是memberNo。
如何将那个MemberNo从RequestBody注入到HandlerInterceptorAdapter?
是否可以使用Spring SpEL或其他方式从Body获取数据并将其发送到AnnotationResolver?
也许还有其他方法可以做到这一点?
我这样尝试,响应为:$ {token.memberNo}作为字符串
最佳答案
那不可能
注释需要常量值,并且方法参数是动态的。