关于带注释控制器的春季 AOP 建议
2022-09-02 10:08:49
我正在尝试使用AOP在带注释的控制器之后进行一些处理。一切都在运行,没有错误,但建议没有被执行。
下面是控制器代码:
@Controller
public class HomeController {
@RequestMapping("/home.fo")
public String home(ModelMap model) {
model = new ModelMap();
return "home";
}
}
和应用程序配置中的设置
<aop:aspectj-autoproxy/>
<bean id="testAdvice" class="com.test.TestAdvice">
</bean>
<bean id="testAdvisor"
class="org.springframework.aop.aspectj.AspectJExpressionPointcutAdvisor">
<property name="advice" ref="testAdvice" />
<property name="expression" value="execution(* *.home(..))" />
</bean>
和实际建议
public class TestAdvice implements AfterReturningAdvice {
protected final Log logger = LogFactory.getLog(getClass());
public void afterReturning(Object returnValue, Method method, Object[] args,
Object target) throws Throwable {
logger.info("Called after returning advice!");
}
}
是否有可能对带注释的控制器提供建议?我正在使用Spring 2.5。