我想在我的Spring MVC项目中配置spring AOP: 以下是代码:
package com.samik.aspect;
import org.aspectj.lang.JoinPoint;
import org.aspectj.lang.annotation.Aspect;
import org.aspectj.lang.annotation.Before;
import org.aspectj.lang.annotation.Pointcut;
import org.springframework.web.servlet.ModelAndView;
@Aspect
public class LoggingAspect {
@Before("HomeGetter()")
public void LoggingAdvice(JoinPoint joinPoint){
System.out.println("Logger Advice called for Home Request");
System.out.println(joinPoint.toString());
}
@Pointcut("execution(protected ModelAndView getHomePage())")
public void HomeGetter(){}
}
-------------------------------------------------------------------------
Main.java
@RequestMapping(value="/Home.html", method = RequestMethod.GET)
protected ModelAndView getHomePage(){
ModelAndView modelAndView = new ModelAndView("content/home/Home");
return modelAndView;
}
在调度程序servlet中添加了以下代码:
<bean id = "loggingAspect" class = "com.samik.aspect.LoggingAspect" />
<aop:aspectj-autoproxy>
<aop:include name='loggingAspect' />
</aop:aspectj-autoproxy>
没有收到错误,请帮忙。看着互联网,这就是提出解决方案的方法。 如果我错过任何东西,请还原吗?
答案 0 :(得分:0)
错误消息ModelAndView [Xlint:invalidAbsoluteTypeName]
表示您在切入点中使用的类型名称不存在(或不完全限定)。它应该有助于将切入点更改为:
@Pointcut("execution(protected org.springframework.web.servlet.ModelAndView getHomePage())")