zoukankan      html  css  js  c++  java
  • spring注解@EnableAspectJAutoProxy的学习

    @EnableAspectJAutoProxy(proxyTargetClass = true, exposeProxy = true)

    proxyTargetClass = true : 表示使用CGLIB实现代理类;默认为false:使用JDK实现代理类。

    exposeProxy = true : 表示是否对外暴露代理对象,即是否可以获取AopContext。通常用于拦截嵌套调用的方法。如自调用方法的拦截:

    分析:AOP拦截的本质是为调用的对象生成了一个代理对象,而自调用使用 this关键字获取到的是原对象而非代理对象也就不会进行拦截了。

    解决:将自调用改为 ((TargetObject) AopContext.currentProxy()).function(), 即获取当前代理对象进行函数调用。

    因为我喜欢追寻过程中的自己
  • 相关阅读:
    枚举类 --单例模式
    模板设计模式
    动态代理
    反射应用--修改属性值
    通过反射绕过泛型
    java反射
    网络编程练习
    TCP编程
    GUI 聊天界面
    UDP传输多线程
  • 原文地址:https://www.cnblogs.com/IzuruKamuku/p/14372964.html
Copyright © 2011-2022 走看看