当前位置: 首页 > news >正文

哪里建个人网站好wordpress网站都有哪些

哪里建个人网站好,wordpress网站都有哪些,英文网站建设 论文,wordpress仿搞笑AOP对象是如何创建的 对于熟悉Spring IOC流程源码的同学来说#xff0c;一定了解bean的整个生命周期#xff0c;也就是从实例化、属性填充、初始化三个过程。那么对于Bean 工厂来说#xff0c;是如何保证需要创建代理的对象创建代理的呢。 从图中可以看到#xff0c;本质…AOP对象是如何创建的 对于熟悉Spring IOC流程源码的同学来说一定了解bean的整个生命周期也就是从实例化、属性填充、初始化三个过程。那么对于Bean 工厂来说是如何保证需要创建代理的对象创建代理的呢。 从图中可以看到本质是通过注解 EnableAspectJAutoProxy, 通过引入 Import(AspectJAutoProxyRegistrar.class) 顶层其实就是一个BPP 核心调用流程图就在这里这里可以通过debug的方式查找。 Target(ElementType.TYPE) Retention(RetentionPolicy.RUNTIME) Import(MyAopAspectJPostProcessor.class) public interface MyEnableAspectjAutoProxy { }Configuration ComponentScan(com.qxlx.aopprocessor) MyEnableAspectjAutoProxy public class Config {}最终通过自定义注解的方式 也实现了这种一个简易版本的AOP 详解 EnableAspectJAutoProxy proxyTargetClass /*** Indicate whether subclass-based (CGLIB) proxies are to be created as opposed* to standard Java interface-based proxies. The default is {code false}.*/boolean proxyTargetClass() default false;其实就是是否基于CGlib进行动态代理对于接口默认时false。 exposeProxy /*** Indicate that the proxy should be exposed by the AOP framework as a {code ThreadLocal}* for retrieval via the {link org.springframework.aop.framework.AopContext} class.* Off by default, i.e. no guarantees that {code AopContext} access will work.* since 4.3.1*/boolean exposeProxy() default false; 其实这个字段的含义就是从4.3.1 版本开始如果设置为true的话会把当前对象的代理对象存储到ThreadLocal对象中。 // 可以用来解决 本类同方法调用事务失效时 获取代理对象IUserService userService (IUserService) AopContext.currentProxy();userService.delete();其实就是根据exposeProxy的值 判断是否true将当前代理对象存储到ThreadLocal中。 // JdkDynamicAopProxy 代理if (this.advised.exposeProxy) {// Make invocation available if necessary.oldProxy AopContext.setCurrentProxy(proxy);setProxyContext true;} // 本质其实就是ThreadLocal private static final ThreadLocalObject currentProxy new NamedThreadLocal(Current AOP proxy); AnnotationAwareAspectJAutoProxyCreator 再往下看的话 其实就是分别JDK和Cglib生成代理的代码了。 1.BeanPostProcess创建代理。考虑循环引用问题 2.ProxyFactory setTarget、setAdvisor、 3.底层的代码 AOPProxy CglibAopProxy JdkDnmiacAopProxy 1.AOP创建了动态代理 2.动态字节码动态 运行时执行 是如何执行的 代理是在运行的过程中才会把原始对象的功能与额外功能进行整合。 动态代理 运行效率低于静态代理代理类执行过程 这里总整体进行总结下一个是代理对象的生成是在bean after BPP阶段进行调用生成的另外一个就是实际方法的调用就是在原有的类基础上代理类加了拦截表达式根据表达式判断当前方法是否需要执行对应的前置 后置 等方法完整额外功能的添加。 感兴趣的可以通过 看 具体的源码 https://github.com/qxlx/spring-code/blob/main/src/main/java/com/qxlx/aopprocessor/
http://www.dnsts.com.cn/news/147589.html

相关文章:

  • 查公司查企业用什么网站ps网站首页怎么做
  • 知名网站域名被抢注企业宣传片的制作流程
  • 网站更改公司需要重新备案吗wordpress文章图片不显示
  • 个人企业网站公司视频宣传片
  • 英文网站流量统计近期新闻热点
  • 毕业设计做视频网站设计网络服务提供者是谁
  • 帮企业建网站网站的域名分为哪些
  • 如何免费做网站赚钱宁波建网站如何收费
  • 网站备案 深圳如何宣传自己的网站
  • 百度网盟推广的 合作网站加强学院网站的建设与管理
  • app开发怎么赚钱搜索引擎优化工作
  • 如何自己做优惠券网站邢台123生活网
  • 东三省网站建设公司廊坊快速排名优化
  • 郑州做旅游网站的公司网络科技公司一般做什么
  • 360网站推广官网网址企业整套vi设计都包含哪些
  • 酒店网站建设注意什么58同城企业网站怎么做的
  • 刷排名的软件是什么南通网站优化
  • 同心食品厂网站建设项目任务分解前端网站开发毕设类型
  • 成都市建设局网站广告平面设计作品
  • 珠宝网站源码免费下载游戏网站代理
  • 手机网站尺寸大小门户网站的盈利模式
  • 可信网站权威性怎么样wordpress是框架么
  • 备案的网站转移下城区做网站
  • 企业如何做网站外包多少钱怎么找人做动漫视频网站
  • 潍坊精神文明建设网站免费做app网站有哪些
  • 上海招聘网站排名莆田注册公司
  • dede网站下载焦作市网站建设公司
  • 网站开发问卷调查wordpress美术馆插件
  • 郑州艾特网站建设枣庄建网站的公司
  • 展台设计网站都有哪些wordpress 站群xmlrpc