控制器上的方面方法拦截
Aspect method interception over a Controller
我有一个 Spring mvc 控制器,方法如下:
@RequestMapping(value = "/method1", method = GET)
public A method1() throws Exception
{
return new A();
}
和
@RequestMapping(value = "/method2", method = GET)
public int method2() throws Exception
{
return -1;
}
我想用一个方面拦截这些方法:
@Before("execution(** com.test.controller.*(..))")
public void startLog()
{
System.out.println("START");
}
这方面在 method1
上工作正常,在 method2
上失败。我做错了什么?
具有@RequestMapping 注释的特定包中方法的切入点表达式:
@Before("execution(* com.test.controller.*.*(..)) && @annotation(org.springframework.web.bind.annotation.RequestMapping)")
public void startLog()
{
System.out.println("START");
}
我有一个 Spring mvc 控制器,方法如下:
@RequestMapping(value = "/method1", method = GET)
public A method1() throws Exception
{
return new A();
}
和
@RequestMapping(value = "/method2", method = GET)
public int method2() throws Exception
{
return -1;
}
我想用一个方面拦截这些方法:
@Before("execution(** com.test.controller.*(..))")
public void startLog()
{
System.out.println("START");
}
这方面在 method1
上工作正常,在 method2
上失败。我做错了什么?
具有@RequestMapping 注释的特定包中方法的切入点表达式:
@Before("execution(* com.test.controller.*.*(..)) && @annotation(org.springframework.web.bind.annotation.RequestMapping)")
public void startLog()
{
System.out.println("START");
}