日期:2014-05-17  浏览次数:21586 次

spring3.0 aspectj 的配置与使用
     今天明白一点事,尝鲜是要花费代价的,想试下spring 3.0 的AOP,用aspecj做配置,一路上有太多的问题,真是麻烦,好在最后是成功了,这里再把要用到的Jar做个列表:



好多的jar文件要自己动手找下,要不就下载那个Spring3.0的依赖包吧, 里面会有想要的Jar不守100多M不是开玩笑,要用到的Jar见附件

测试代码:
package fantasy0707.spring.aop;

import org.aspectj.lang.annotation.Aspect;
import org.aspectj.lang.annotation.Before;
import org.aspectj.lang.annotation.Pointcut;
import org.springframework.stereotype.Component;

@Aspect
@Component
public class LogInterceptor {
	
	@Pointcut("execution(public * fantasy0707.spring.service.*.*(..))")
	public void pointCut() {}
	
	@Before("pointCut()")
	public void before() {
		
		System.out.println("before method...");
		
	}

}




运行结果为:
2010-4-6 17:12:05 org.springframework.context.support.AbstractApplicationContext prepareRefresh
信息: Refreshing org.springframework.context.support.ClassPathXmlApplicationContext@cd5f8b: startup date [Tue Apr 06 17:12:05 CST 2010]; root of context hierarchy
2010-4-6 17:12:05 org.springframework.beans.factory.xml.XmlBeanDefinitionReader loadBeanDefinitions
信息: Loading XML bean definitions from class path resource [beans.xml]
2010-4-6 17:12:06 org.springframework.beans.factory.support.DefaultListableBeanFactory preInstantiateSingletons
信息: Pre-instantiating singletons in org.springframework.beans.factory.support.DefaultListableBeanFactory@6210fb: defining beans [org.springframework.context.annotation.internalConfigurationAnnotationProcessor,org.springframework.context.annotation.internalAutowiredAnnotationProcessor,org.springframework.context.annotation.internalRequiredAnnotationProcessor,org.springframework.context.annotation.internalCommonAnnotationProcessor,logInterceptor,userDao,service,org.springframework.aop.config.internalAutoProxyCreator]; root of factory hierarchy
init...
before method...
a user added!
2010-4-6 17:12:07 org.springframework.context.support.AbstractApplicationContext doClose
信息: Closing org.springframework.context.support.ClassPathXmlApplicationContext@cd5f8b: startup date [Tue Apr 06 17:12:05 CST 2010]; root of context hierarchy
2010-4-6 17:12:07 org.springframework.beans.factory.support.DefaultSingletonBeanRegistry destroySingletons
信息: Destroying singletons in org.springframework.beans.factory.support.DefaultListableBeanFactory@6210fb: defining beans [org.springframework.context.annotation.internalConfigurationAnnotationProcessor,org.springframework.context.annotation.internalAutowiredAnnotationProcessor,org.springframework.context.annotation.internalRequiredAnnotationProcessor,org.springframework.context.annotation.internalCommonAnnotationProcessor,logInterceptor,userDao,service,org.springframework.aop.config.internalAutoProxyCreator]; root of factory hierarchy
destory...


1 楼 xiaokk 2010-04-06  
老鸟们不看这个,新手我来顶你。
2 楼 wei495715356 2010-04-08  
先支持你哈!
3 楼 hellboyss 2010-12-21  
今天弄了一下午 还是真的缺少这些JAR 太感谢了 就是不知道为什么 spring3里面会少这些
4 楼 beforezero 2011-03-10  
你好歹給個帶參數的啊
5 楼 jackywong 2011-03-10  
beforezero 写道
你好歹給個帶參數的啊

public void afterMethod(JoinPoint jp){
      Object[] args = jp.getArgs();
}