在配置AOP的时候, 在配置文件中配置切面方法为 <aop:after method="getLog"></aop:after>表示方法为getLog  但是这里的方法中不知道怎么定义参数如果切面类为 AA中包括了以下三个方法
 getLog()  
 getLog(String a);
 getLog(String a, int b);如果按照上面的配置,调用的肯定是没有参数的方法,但是如果我需要调用有参数的,应该怎么配置?

解决方案 »

  1.   

    一是检查你写的对不对
    二是它有个属性叫作arg-names
      

  2.   

    加入切点就可以了啊、
    @Pointcut(value = "execution(返回值   方法的全路径从包开始(参数))")//如果你参数都想拦截变成  .. 就可以了、
     
    @Pointcut(value = "execution(* cn.Test.TaskFoo(..))")
        private void foo() {
        }    @After("foo()")
        public void MyTask(JoinPoint joinpoint) throws Throwable {
            int agrNumbs = joinpoint.getArgs().length;//获取全部参数个数
            System.out.println(agrNumbs);
            String a  = (String) joinpoint.getArgs()[0];//获取第一个参数
            System.out.println(a);        //以下参数获取同理
            //do something
               }