Spring AOP 中@Around 建议的未绑定切入点参数

问题描述

我正在学习 spring AOP。我有一个方法 addUser ,它需要 User 对象。我有一个切入点,我想将这个 User 对象作为带有@Around 建议的参数。但是当我尝试这样做时,它给了我Unbound pointcut parameter 'user'。有人可以帮我吗?我的代码如下:

我的控制器方法>>

public String addUser(@Valid User user,BindingResult result,Model model) {
    // ...
}

我的方面代码 >>

@pointcut("execution(* com.study.demo.controller.UserController.addUser(..))")
public void pointcutAddUser() {}

@Around("pointcutAddUser()")
public Object applicationLogger(ProceedingJoinPoint pjp,User user) throws Throwable {
    ObjectMapper om = new ObjectMapper();
    String methodName = pjp.getSignature().getName();
    String className = pjp.getTarget().getClass().toString();
    Object[] array = pjp.getArgs();
    System.out.println("ClassName: " + className + ",methodName: " + methodName + "(),parameters: " + om.writeValueAsstring(array));
    Object obj = pjp.proceed();
    System.out.println("ClassName: " + className + ",Response: " + om.writeValueAsstring(obj));
    return obj;
}

给定错误>> Unbound pointcut parameter 'user'

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)