Java 控制器上的方面方法拦截
我有一个Spring mvc控制器,具有以下方法:Java 控制器上的方面方法拦截,java,spring,spring-mvc,spring-aop,aspect,Java,Spring,Spring Mvc,Spring Aop,Aspect,我有一个Spring mvc控制器,具有以下方法: @RequestMapping(value = "/method1", method = GET) public A method1() throws Exception { return new A(); } 及 我想用一个方面来拦截这些方法: @Before("execution(** com.test.controller.*(..))") public void startLog() { Sy
@RequestMapping(value = "/method1", method = GET)
public A method1() throws Exception
{
return new A();
}
及
我想用一个方面来拦截这些方法:
@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");
}
是的,我将double**作为返回类型时出错。有了这个和注释,一切正常。谢谢
@Before("execution(* com.test.controller.*.*(..)) && @annotation(org.springframework.web.bind.annotation.RequestMapping)")
public void startLog()
{
System.out.println("START");
}