<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd">
<bean id="myPointcutAdvisor"
class="org.springframework.aop.support.RegexpMethodPointcutAdvisor">
<property name="advice">
<ref local="MyInterceptor" />
</property>
<property name="patterns">
<list>
<value>.*do.*</value>
<value>.*action.*</value>
</list>
</property>
</bean>
<bean id="MyInterceptor" class="com.MethodTimeCostInterceptor">
</bean>
<bean id="myProxyAop"
class="org.springframework.aop.framework.ProxyFactoryBean">
<property name="proxyTargetClass">
<value>true</value>
</property>
<property name="target">
<ref local="service" />
</property>
<property name="interceptorNames">
<value>myPointcutAdvisor</value>
</property>
</bean>
<bean id="service" class="com.ServiceImpl" lazy-init="true" />
</beans>
测试代码
package com;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.FileSystemXmlApplicationContext;
public class Demo {
public static void main(String[] args) {
ApplicationContext cxt =
new FileSystemXmlApplicationContext("classpath:applicationContext.xml");
ServiceImpl service = (ServiceImpl)cxt.getBean("service");
System.out.println(service);
service.doTest();
}
}
这个配置相信大家都会,但是在Myeclipse6.0下导入spring的jar包。会报这个错误
net.sf.cglib.core.CodeGenerationException: java.lang.reflect.InvocationTargetException-->null
发现竟然是jar包不兼容导致。是Myeclipse6.0自动导入的spring的jar包问题。是自动导入的cglib包有问题。
自己实现cglib也出现过同样的问题。后面自己导入cglib包,发现少asm包,需要导入 hibernate包就可以正常运行。
解决方案:
把自动导入的jar包删除。重新导入jar包即可。
分享到:
相关推荐
Spring支持两种代理机制:基于接口的JDK动态代理和基于类的CGLIB代理。 CGLIB(Code Generation Library)是一个强大的高性能代码生成库,其底层是通过使用操作Java字节码的开源字节码操作框架(比如ASM)来实现的...
标题中的"spring-cglib-repack-3.2.5.jar"和"spring-objenesis-repack-2.6.jar"是Spring框架在运行时依赖的两个关键库,它们主要涉及到动态代理和对象创建的优化。 1. **CGLIB(Code Generation Library)**: ...
在这个问题中,我们遇到了两个关键的jar包:`spring-cglib-repack-3.2.0.jar`和`spring-objenesis-repack-2.1.jar`。这两个jar包对于理解Spring框架的工作原理以及它们在实际应用中的作用至关重要。 首先,`spring-...
Spring是一个开放源代码的设计层面框架,他解决的是业务逻辑层和其他各层的松耦合问题,因此它将面向接口的编程思想贯穿整个系统应用。Spring是于2003 年兴起的一个轻量级的Java 开发框架,由Rod Johnson创建。简单...
通过深入研究这些库,开发者可以提升对Spring框架的掌握程度,从而提高自己的编程技能和解决问题的能力。 总的来说,"spring-cglib-repack-3.2.5.jar"、"spring-objenesis-repack-2.6.jar"和"spring-objenesis-...
在深入理解`spring-cglib-repack-3.2.4.jar`和`spring-objenesis-repack-2.5.1.jar`这两个jar包之前,我们先来了解一下Spring框架的核心概念。 Spring框架的核心包括依赖注入(Dependency Injection,DI)和面向切...
在Spring框架的高版本源码分析过程中,可能会遇到缺少特定库的情况,比如"spring-cglib-repack-3.2.4.jar"和"spring-objenesis-repack-2.4.jar"这两个文件。这些文件是Spring框架运行时的重要组成部分,对于理解和...
org.springframework.asm.AnnotationVisitor org.springframework.cglib.core.ClassGenerator
### Spring Cglib 中文说明 #### CGLIB 包简介与原理 CGLIB(Code Generation Library)是一个强大且高性能...通过深入理解 CGLIB 的工作原理和 API 结构,开发者可以更有效地利用这一工具来解决复杂的软件设计问题。
这两个库都是Spring框架的重要组成部分,用于解决特定的编程问题。 首先,让我们来了解一下`spring-cglib-repack-3.2.6.jar`。CGlib(Code Generation Library)是一个强大的高性能的代码生成库,它主要用于扩展...
spring-cglib-repack-3.2.6.jar 文件大小:313502 字节 修改时间:2018年8月26日 09:12:09 MD5 :1F3A42309EC16632954291B584778432 SHA1 :7A9601D36541798180C2AFC4DA34A78237F5C0AA CRC32 :675C7EB7 spring-...
在给定的标题和描述中,提到了两个关键的jar包:`spring-cglib-repack-3.2.6.jar` 和 `spring-objenesis-repack-2.6.jar`。这两个文件对于理解Spring框架的内部机制以及如何在IDEA中构建Spring源码至关重要。 首先...
标题中的"spring-cglib-repack-3.2.5.jar"和"spring-objenesis-repack-2.6.jar"是两个与Spring框架相关的库文件,它们主要用于Spring框架的内部实现,尤其是针对Java对象的创建和代理机制。下面将详细解释这两个库的...
spring源码深度分析源码依赖,将cglib和objenesis重新打包处理。同时添加grandle依赖:compile fileTree(dir: 'libs', include: ['*.jar'])
在深入探讨Spring源码编译过程中遇到的CGlib和Objenesis问题之前,我们先了解一下这两个库的基本概念。 CGlib(Code Generation Library)是Java的一个动态代理库,它主要用于生成子类来实现对目标对象的代理。在...
当我们在研究或编译Spring 4.0的源码时,可能会遇到一些依赖问题,其中"spring-cglib-repack-3.1.jar"和"spring-objenesis-repack-2.1.jar"是两个关键的jar包,它们在源码编译过程中起着至关重要的作用。本文将详细...
在本资源包中,包含的是针对此类问题的解决方案——`spring-cglib-repack`和`spring-objenesis-repack`。 首先,`CGLIB`(Code Generation Library)是一个强大的高性能的代码生成库,它在许多AOP(面向切面编程)...
`spring-cglib-repack-3.2.5.jar`和`spring-objenesis-repack-2.6.jar`是Spring运行时必须的组件,确保这些库的正确版本被引入可以避免版本冲突和不兼容问题。开发者通常会通过Maven或Gradle等构建工具来管理这些...
在Spring框架中,Objenesis用于解决某些情况下,当使用CGLib进行代理时,由于目标类没有无参构造器而无法实例化的问题。Objenesis提供了一种快速且低级别的机制来实例化新类,即使这些类没有无参构造器,也可以避免...
然而,有时候在导入Spring项目时,可能会遇到一些问题,例如标题中提到的"spring-cglib-repack-3.2.4.jar"和"spring-objenesis-repack-2.4.jar"这两个jar包的缺失。这些jar包对于Spring框架的正常运行至关重要,因为...