public class MessageWriter { public void writerMessage() { System.out.println("i'm working"); } } public class MessageDecorator implements MethodInterceptor{ @Override public Object invoke(MethodInvocation methodInvocation) throws Throwable { System.out.println("before..."); Object retVal = methodInvocation.proceed(); System.out.println("after..."); return retVal; } } public class MessageWeaver { public static void main(String[] args) { // joint point MessageWriter target = new MessageWriter(); // create the proxy ProxyFactory pf = new ProxyFactory(); // add advice pf.addAdvice(new MessageDecorator()); pf.setTarget(target); MessageWriter proxy = (MessageWriter) pf.getProxy(); target.writerMessage(); System.out.println("------------"); proxy.writerMessage(); } }
在测试就项目时使用上述测试代码如下jars⑩
spring2.5.6.jar
commons-logging-1.2.jar
cglib-full-2.0.2.jar
aspectjweaver-1.8.0.RELEASE.jar
测试类报如下错误
Exception in thread "main" java.lang.NoSuchMethodError: net.sf.cglib.proxy.Enhancer.setInterceptDuringConstruction(Z)V
at org.springframework.aop.framework.Cglib2AopProxy.getProxy(Cglib2AopProxy.java:182)
at org.springframework.aop.framework.Cglib2AopProxy.getProxy(Cglib2AopProxy.java:145)
at org.springframework.aop.framework.ProxyFactory.getProxy(ProxyFactory.java:97)
at com.ycx.ch5.section3.MessageWeaver.main(MessageWeaver.java:17)
经过分析使用cglib-2.1_3.jar和asm-1.5.3.jar代替cglib-full-2.0.2.jar
问题解决
相关推荐
spring2.5.6.zip包括spring2.5.6所有jar包为
spring2.5.6jar包sprinspring2.5.6jar包g2.5.6jar包spring2.5.6jar包
一、Spring MVC环境搭建:(Spring 2.5.6 + Hibernate 3.2.0) 1. jar包引入 Spring 2.5.6:spring.jar、spring-webmvc.jar、commons-logging.jar、cglib-nodep-2.1_3.jar Hibernate 3.6.8:hibernate3.jar...
spring2.5.6开发必备的jar文件,希望能帮到你。
spring2.5.6注解以及xml两个简单ioc入门示例项目,导入项目可运行。 同时带有spring-framework-2.5.6-with-docs.zip包
spring2.5.6官方jar包 spring2.5.6官方jar包 spring2.5.6官方jar包 spring2.5.6官方jar包 spring2.5.6官方jar包 spring2.5.6官方jar包 spring2.5.6官方jar包
spring 2.5.6 官方包 spring-framework-2.5.6.SEC02.zip spring-framework-2.5.6.SEC02.zip spring-framework-2.5.6.SEC02.zip
spring2.5.6 aop简单示例,导入可运行,包括必须jar包
spring2.5.6 jar包+源码
spring2.5.6完整源代码及api
Spring2.5.6 帮助文档 API
该txt文件中是spring2.5.6完整版开发依赖包的直接下载地址,迅雷中直接新建下载任务复制该地址就可快速下载。该依赖包中包含了所有Spring开发中用到的jar文件以及spring框架源码,和相关开发文档,api,示例等,欢迎...
spring 2.5.6源码 把其中的文档部分给删了,其他都是发布版本
包含 Struts2.1.6 + Spring2.5.6 + Hibernate3.3.2 整合的包。
这些是spring 2.5.6的modules的jar包
Spring 2.5.6和3.0所有的jar包 需要的朋友可以下下来看看.
spring2.5.6+struts2.1.6+hibernate3.3.2+mysql驱动包 所需jar集合
spring2.5.6相关依赖jar包,包含完整的依赖包
Spring2.5.6学习笔记-最新Spring2.5.6学习笔记-最新Spring2.5.6学习笔记-Spring2.5.6学习笔记-最新Spring2.5.6学习笔记-最新Spring2.5.6学习笔记-最新最新