一概述
最近想看看dubbo的实现原理,刚入手代码相关文档提到它与spring框架无缝对接,所以对里面的自定义标签有了兴趣。在spring的配置文件中也经常看到一些很特殊的标签比如spring的事物标签<tx:开头,面向切面处理的<aop:,这里来研究下做个自己的标签怎么玩的。
二xml标签Schema
要写自己的标签肯定需要有xml的标签规范,所以需要一个schema文件,后缀是.xsd的文件。具体的规范如何编写可以参考 http://www.w3school.com.cn/schema 里面有详细的描述。这里我自己建了一个tag.xsd文件,名字可以自己随意命名,但是后缀必须是xsd的。内容如下:
<?xml version="1.0" encoding="ISO-8859-1" ?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://aaaa/schema/tag"
xmlns="http://aaaa/schema/tag"
elementFormDefault="qualified">
<xs:element name="bean">
<xs:complexType>
<xs:attribute name="id" type="xs:string"></xs:attribute>
<xs:attribute name="className" type="xs:string" use="required"></xs:attribute>
<xs:attribute name="scope" type="xs:string"