在spring用AOP记录?

我是新来的,在我的办公室里。 所以我没有指导。

我需要使用log4j使用AOP实现日志记录。

我在基本的spring MVC示例中实现了没有AOP的日志记录?

在没有记录的aspectJ下使用aspectJAOP做了小样本(刚刚制作了Sysout )?

我不知道如何整合它?

任何人都可以给我一个启动想法吗?

肯定赞赏好的答案……

Spring让我们很容易使用AOP。 这是一个简单的日志示例:

 @Aspect public class MyLogger { private Logger log = Logger.getLogger(getClass()); @After("execution(* com.example.web.HomeController.*(..))") public void log(JoinPoint point) { log.info(point.getSignature().getName() + " called..."); } } 

然后只需配置applicationContext.xml(或等效的):

      

您会在MyLogger类中注意到我在方法正上方指定了@After 。 这称为建议,它基本上指定相关方法之后调用此“log”方法。 其他选项包括@Before, @Around, @AfterThrowing

表达式"execution(* com.example.web.HomeController.*(..))"被称为切入点表达式,并指定我们所针对的内容(在本例中为HomeController类的所有方法)。

PS aop命名空间( xmlns:aop="http://www.springframework.org/schema/aop" )和架构位置(取决于版本)需要添加到顶部的applicationContext.xml中。 这是我的设置:

  

您需要执行几个步骤来集成Aspectj,

  1. 安装AspectJ, http://www.cs.utep.edu/cheon/cs3360/project/proj1/installing-aspectj.txt
  2. 将aop.xml添加到项目中的META-INF \ aop.xml
  3. 在项目类路径中添加aspectjrt-xx0.jar和aspectjweaver-xx0.jar
  4. 将-javaagent:/ aspectj的路径安装/ aspectjweaver-1.7.0.jar添加到服务器的JVM中。

这是aop.xml的示例,

         

如果你已经在使用spring,那么最好使用Spring来简化你的设置,这是一个很好的例子, http://forum.springsource.org/showthread.php?61551-Bean-Factory- is- not-set-换BeanConfigurerSupport