返回介绍

7.2 动态 AOP 自定义标签

发布于 2025-04-22 22:09:13 字数 901 浏览 0 评论 0 收藏

之前讲过 Spring 中的自定义注解,如果声明了自定义的注解,那么就一定会在程序中的某个地方注册了对应的解析器。我们搜索整个代码,尝试找到注册的地方,全局搜索后我们发现了在 AopNamespaceHandler 中对应着这样一段函数:

public void init() {

  // In 2.0 XSD as well as in 2.1 XSD.

  registerBeanDefinitionParser("config", new ConfigBeanDefinitionParser());

  registerBeanDefinitionParser("aspectj-autoproxy", new AspectJAutoProxyBean

 DefinitionParser());

  registerBeanDefinitionDecorator("scoped-proxy", new ScopedProxyBeanDefinition

 Decorator());

  // Only in 2.0 XSD: moved to context namespace as of 2.1

  registerBeanDefinitionParser("Spring-configured", new SpringConfiguredBean

 DefinitionParser());

}

此处不再对 Spring 中的自定义注解方式进行讨论。有兴趣的读者可以回顾之前的内容。

我们可以得知,在解析配置文件的时候,一旦遇到 aspectj-autoproxy 注解时就会使用解析器 AspectJAutoProxyBeanDefinitionParser 进行解析,那么我们来看一看 AspectJAutoProxyBean DefinitionParser 的内部实现。

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。