`
angellin0
  • 浏览: 114414 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

Unable to apply any optimisations to advised method 信息解析

阅读更多
在Spring3中使用CgLib动态代理时出现类似以下日志:
[DEBUG] 2011-06-16 23:23:54,457 org.springframework.aop.framework.Cglib2AopProxy - <Unable to apply any 
optimisations to advised method: public java.lang.Object 
org.workin.orm.PersistenceProvider.merge(java.lang.Object)> 
[DEBUG] 2011-06-16 23:23:54,457 org.springframework.aop.framework.Cglib2AopProxy - <Unable to apply any 
optimisations to advised method: public void 
org.workin.orm.PersistenceProvider.refresh(java.lang.Object)> 


首先了解spring对AOP的支持 :

1、如果目标对象实现了接口,默认会采用JDK的动态代理机制实现AOP
2、如果目标对象实现了接口,可以强制使用CGLIB实现AOP
3、如果目标对象没有实现接口,必须使用CGLIB生成代理,spring会自动在CGLIB和JDK动态代理之间切换

4.如何强制使用CGLIB生成代理?
* 添加CGLIB库,SPRING_HOME/lib/cglib/*.jar
* 在spring的配置文件中加入:
<aop:aspectj-autoproxy proxy-target-class="true"/>


JDK代理和CGLIB代理的区别?
* JDK代理只能对实现了接口的类生成代理,而不能针对类
* CGLIB是针对类实现代理的,主要对指定的类生成一个子类,并覆盖其中的方法,
  因为是继承,所以不能使用final来修饰类或方法

解决该信息的处理建议:
1、如果一定要用不实现接口的类。
  建议尽量用Set注入,尽可能不用构造方法注入。
2、最好还是定义个接口,然后实现这个接口。
  这样不管是什么注入,都没问题了。
因为PersistenceProvider没有实现接口,目前是用@Repository注解注入的,所以将该注解去掉,改为set注入或者在xml中属性注入,就OK了。
0
0
分享到:
评论

相关推荐

    nuxt-build-optimisations:Nuxt.js模块可自动使构建速度更快:high_voltage:

    nuxt构建优化 立即加快您的Nuxt.js v2构建时间。 为什么以及速度有多快? Nuxt.js速度很快,但受其webpack构建的限制,当您的应用增长时,它的运行速度会变慢。 Nuxt构建优化抽象了优化Nuxt.js应用程序的复杂性,...

    17-Unity_Tips_Techniques_And_Optimisations.pdf

    官方PSVR的开发文档

    piclassic.rar_easy

    计算pi ** Pascal Sebah : September 1999 ** ** Subject: ** ** A very easy program to compute Pi with ...** No optimisations, no tricks, just a basic program to learn how ** to compute in multiprecision.

    React-optimisations

    有关更多信息,请参见关于的部分。 yarn build 构建生产到应用程序build文件夹。 它在生产模式下正确捆绑了React,并优化了构建以获得最佳性能。 生成被最小化,并且文件名包括哈希值。 您的应用已准备好进行部署...

    arnold代码matlab-SNOBFit_for_chemical_optimisations:用于MATLAB中snobfit的基于类的

    arnold代码matlab SnobfitClass Neumaier和Huyer基于SNOBFit的MATLAB的实现的基于类的包装器。 该包装程序旨在简化SNOBFit的安装和使用,特别是对于化学和其他黑匣子优化。 基础文件(可以在“ ...

    Nuxt.js实战详解

    从代码中可以看出,这样的页面是不利于 搜索引擎优化(SEO, Search Engine Optimization) ,并且 内容到达时间(time-to-content) (或称之为首屏渲染时长)也有很大的优化空间。为了解决以上问题,引入了 Nuxt.js ...

    Design for Embedded Image Processing on FPGAs - 基于FPGA的嵌入式图像处理系统设计 英文版

    He began applying FPGA technology to image processing in 2002, and since then has published about 25 papers on issues and applications of FPGAs to image processing. 目录 Preface. Acknowledgements. 1...

    PowershellProfile:我的Powershell个人资料

    Enable-Optimisations 为当前目录中的每个.dll创建一个.ini文件,其中包含: [.NET Framework Debugging Control] GenerateTrackingInfo=1 AllowOptimize=0 禁用每个dll的优化 禁用优化 Disable-Optimisations 通过...

    tomcat性能监控

    Le monitoring est en grande partie basé sur des statistiques de requêtes et sur des courbes d'évolution. Il permet ainsi d'améliorer ... - vérifier l'amélioration réelle après des optimisations

    Nuxt.js模块可自动使构建速度更快:high_voltage:-JavaScript开发

    nuxt-build-optimisations立即加快您的Nuxt.js v2构建时间。 为什么以及速度有多快? 当nuxt-build-optimisations立即加快Nuxt.js v2的构建速度时,Nuxt.js速度很快,但受其webpack构建的限制。 为什么以及速度有多...

    DESIGN FOR EMBEDDED IMAGE PROCESSING ON FPGAS

    4.4.1 Mapping to FPGA Resources 97 4.4.2 Algorithm Mapping Issues 100 4.4.3 Design Flow 101 4.5 Designing for Tuning and Debugging 102 4.5.1 Algorithm Tuning 102 4.5.2 System Debugging 104 5 Mapping ...

    开源项目-centrifugal-centrifugo.zip

    开源项目-centrifugal-centrifugo.zip,Centrifugo v1.3.2 released – real-time messaging server (WebSocket or SockJS) got lots of useful features since ... various optimisations, new javascript client etc)

    质量:内存管理实用程序

    质量 数据管理实用程序 [] [] Qulity是基于内存的实用程序模块,它为您提供了本机JavaScript Map的增强版本以及其他属性,方法和优化。 主要特点 链接 安装/导入 npm install qulity const Qulity = require ( ...

    一种新的本体分类方法-研究论文

    本体分类-类和属性的包含层次结构的计算-是我们所知道的所有OWL推理程序提供的核心推理服务。 一种用于计算类层次结构的流行算法是所谓的增强遍历(ET)算法。 在本文中,我们提出了一种新的分类算法,该算法试图...

    Statoil中基于本体的数据访问-研究论文

    基于本体的数据访问(OBDA)是查询数据库的一种重要方法,该方法使用本体通过从基础数据的技术模式级别细节中抽象出来,以概念上清晰的方式公开数据。 本体通过映射“连接”到数据,该映射允许将本体上的查询自动...

    一种以本体论为媒介的分析感知方法来支持对静态数据和流数据的监视和诊断-研究论文

    在许多工业场景中(包括工业物联网的情况下,需要将异构的分布式分布式流和静态数据进行集成和聚合)的流分析是一项典型的任务,在该工业物联网中,将多个工业设备(例如,西门子的涡轮机)集成到了物联网中。...

    单个图像去雾的组合约束

    单个图像去雾的组合约束

Global site tag (gtag.js) - Google Analytics