在学习spring源码的过程中,发现自己对自定义标签使用的较少,所以记录下自定义标签的使用方法。例子是书《Spring源码深度解析》上的例子,由于没有找到书的源码,就手敲了一遍代码,顺便记录下使用方法。 代码下载地址:https://github.com/LQZYC/SpringCustomElementLearn.git
按照以上步骤,参考源代码会很容易理解。
spring本身包括很多自定义标签,如<aop:aspectj-autoproxy>、<tx:annotation-driven>等。要查看这些标签如何解析的,只需要在spring工程中全局搜索对NamespaceHandlerSupport进行扩展的类。如aop标签的处理类为AopNamespaceHandler,其中有一段代码registerBeanDefinitionParser("aspectj-autoproxy", new AspectJAutoProxyBeanDefinitionParser()),从而我们可以阅读AspectJAutoProxyBeanDefinitionParser类来了解aop的解析过程。
相关资源:spring自定义标签例子