Java RequestParam和PathVariable上的自定义注释
我已经创建了一个自定义注释Java RequestParam和PathVariable上的自定义注释,java,kotlin,spring-webflux,aop,annotation-processing,Java,Kotlin,Spring Webflux,Aop,Annotation Processing,我已经创建了一个自定义注释 annotation class UserControl( val userIdentifier: String ) 我希望在不同控制器中的查询参数和路径变量上应用此注释 fun userWithMobile( @UserControl("PhoneNumber") @RequestParam mobile: String ): RegisteredUser { return
annotation class UserControl(
val userIdentifier: String
)
我希望在不同控制器中的查询参数和路径变量上应用此注释
fun userWithMobile(
@UserControl("PhoneNumber")
@RequestParam mobile: String
): RegisteredUser {
return userManager.getUserWithPhoneNumber(mobile))
}
如何检查查询参数是否具有UserControl注释,并对其进行一些处理。是否有标准的方法来编写全局处理程序,或为此编写处理器
如果有任何帮助,我们将不胜感激。AspectJ可以直接匹配参数注释,但不能将它们绑定到类或方法注释之类的通知方法值。所以,如果您只想匹配它们,一个简单的切入点就足够了。如果您想访问注释,也许还想访问它们的参数值,您需要一点反射魔法。我已经多次回答了相关的问题,这就是为什么我要以重复的形式结束这个问题。但首先,这里是您想要阅读的资源。它们都与您的问题相关,展示了如何处理不同具体情况的示例:
执行(**(..,@my.package.UserControl(*),…)
不匹配切入点中的参数的简单、效率较低的方法,仅使用重新感染: