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

在网站里继费品牌推广策划方案

在网站里继费,品牌推广策划方案,凡科网网站后台建设,贵阳市公共住宅投资建设集团官方网站文章目录一、核心入口:注册自动代理创建器1. 注解驱动入口2. XML驱动入口二、核心注册方法解析AopNamespaceUtils.registerAspectJAnnotationAutoProxyCreatorIfNecessary();AopConfigUtils.registerAspectJAnnotationAutoProxyCreatorIfNecessary()三、核心组件&am…

文章目录

    • 一、核心入口:注册自动代理创建器
      • 1. 注解驱动入口
      • 2. XML驱动入口
    • 二、核心注册方法解析
      • AopNamespaceUtils.registerAspectJAnnotationAutoProxyCreatorIfNecessary();
      • AopConfigUtils.registerAspectJAnnotationAutoProxyCreatorIfNecessary()
    • 三、核心组件:AnnotationAwareAspectJAutoProxyCreator
      • 1. 主要类继承关系
      • 2. 核心方法实现
    • 四、首次触发时机:容器刷新过程
    • 五、代理创建的触发条件
      • 三个核心判断条件:
    • 六、总结:入口生效的三大核心步骤
    • 扩展
      • AnnotationAwareAspectJAutoProxyCreator Diagrams

Spring AOP 的生效始于容器启动阶段的核心组件注册过程,这是整个 AOP 机制的关键入口。下面重点解析这个启动过程的核心步骤:

在使用Spring AOP的时候总会有以下两种方式(基于xml或基于注解)的任一配置来达到启用 Spring AOP 功能的目的

  • 基于xml:<aop:aspectj-autoproxy/>
  • 基于注解:@EnableAspectJAutoProxy

在源码阅读是可以直接在Spring项目中搜索目标配置就能找到具体解析方法了;如下:

在这里插入图片描述
在这里插入图片描述

一、核心入口:注册自动代理创建器

1. 注解驱动入口

当使用 @EnableAspectJAutoProxy 时,触发以下注册链:

在这里插入图片描述
入口类:org.springframework.context.annotation.AspectJAutoProxyRegistrar

在这里插入图片描述

2. XML驱动入口

当解析 <aop:aspectj-autoproxy/> 标签时:
spring-aop 模块中的处理器映射:META-INF/spring.handlers

在这里插入图片描述
在这里插入图片描述
入口类:org.springframework.aop.config.AspectJAutoProxyBeanDefinitionParser

在这里插入图片描述

二、核心注册方法解析

AopNamespaceUtils.registerAspectJAnnotationAutoProxyCreatorIfNecessary();

提示: XML的配置方式实际也是调用到注解的驱动入口方法。
在这里插入图片描述
注册BeanDefinition org.springframework.aop.config.AopConfigUtils.registerAspectJAnnotationAutoProxyCreatorIfNecessary() 的这里不再赘述,看后面的详解。

看XML标签的后续解析方法:org.springframework.aop.config.AopNamespaceUtils.useClassProxyingIfNecessary

解析关键配置属性:<aop:aspectj-autoproxy proxy-target-class="true", expose-proxy="true"/>

在这里插入图片描述
在这里插入图片描述

  • forceAutoProxyCreatorToUseClassProxying:代理类型选择(proxy-target-class)
  • forceAutoProxyCreatorToExposeProxy:暴露代理(expose-proxy)

AopConfigUtils.registerAspectJAnnotationAutoProxyCreatorIfNecessary()

在这里插入图片描述

在这里插入图片描述

三、核心组件:AnnotationAwareAspectJAutoProxyCreator

1. 主要类继承关系

在这里插入图片描述

2. 核心方法实现

BeanPostProcessor 接口实现

在这里插入图片描述

四、首次触发时机:容器刷新过程

AbstractApplicationContext.refresh() 中,代理创建器在特定阶段被激活:

在这里插入图片描述
关键点:在 registerBeanPostProcessors() 阶段,AnnotationAwareAspectJAutoProxyCreator 作为 BeanPostProcessor 被实例化并注册到容器中,准备拦截后续所有 Bean 的初始化过程。

五、代理创建的触发条件

当 Spring 容器初始化任何 Bean 时,都会经过以下判断流程:

在这里插入图片描述

三个核心判断条件:

  1. 非基础设施类:排除AOP自身的组件
  2. 不应跳过:通过shouldSkip()自定义过滤
  3. 存在匹配Advisor:当前Bean有适用的切面逻辑

六、总结:入口生效的三大核心步骤

  1. 组件注册阶段
    通过 @EnableAspectJAutoProxy<aop:aspectj-autoproxy/> 触发注册

    向容器注册 AnnotationAwareAspectJAutoProxyCreator(固定名称:internalAutoProxyCreator
  2. 处理器激活阶段
    refresh()registerBeanPostProcessors() 阶段

    实例化代理创建器并加入BeanPostProcessor队列
  3. Bean初始化拦截阶段
    对所有Bean执行 postProcessAfterInitialization()

    通过 wrapIfNecessary() 三步判断决定是否创建代理

关键结论:Spring AOP的生效入口本质是向容器注册了一个特殊的BeanPostProcessor,它通过拦截Bean初始化过程,在运行时动态创建代理对象,从而实现对目标方法的切面增强。


扩展

AnnotationAwareAspectJAutoProxyCreator Diagrams

在这里插入图片描述


End!

http://www.dtcms.com/wzjs/80737.html

相关文章:

  • avada做网站南宁网络推广服务商
  • 网站做担保交易 是否资质深圳市推广网站的公司
  • b2b电子商务网站模式有哪些类型seo优化服务公司
  • web网站和app的区别google搜索引擎入口网址
  • 奎文建设局网站教程推广优化网站排名
  • 南昌seo营销搜索引擎优化入门
  • 大淘客怎样做网站网站建设公司是怎么找客户
  • 吴博 wordpress福州seo建站
  • 优秀网站设计要素网络推广有哪几种方法
  • 社交博客网站开发上海百度推广电话客服
  • 无锡网络公司服务福州排名seo公司
  • godaddy网站建设怎么样小果seo实战培训课程
  • 网上自己建网站网页设计与制作步骤
  • 做网站哪家最好seo网络优化教程
  • 装修平台网站排名关键词查询优化
  • 做网站可以不用框架吗营销培训课程
  • 枣庄三合一网站开发公司常熟网站建设
  • 北京市疫情最新消息网站seo方案策划书
  • 网站层级windows11优化大师
  • 做电影网站有哪些seo推广的特点
  • 合肥做淘宝网站推广长沙百度公司
  • 个人兴趣网站设计提高工作效率的方法
  • 发布任务做任务赚钱网站建网站找哪个公司
  • 在线音乐网站 用什么做精品成品网站入口
  • 网站视频下载软件优化大师apk
  • 国际营销网站建设北京seo推广
  • 网站建设感谢信站长工具网站
  • 如何做网站主赚钱百度网站客服电话
  • 政府机关单位网站建设怎么做网页设计的页面
  • 网站开发应用价值bing搜索引擎入口