XMLBEANS--XML解析的另一种选择

来源:互联网 发布:linux objext c 编辑:程序博客网 时间:2024/05/20 18:46

0.  下载apachexmlbeans-2.4.0.zip,并安装xmlbeans

A. 添加环境变量:XMLBEANS_HOME XMLBEANS_LIB

B. 修改环境变量:path中添加%XMLBEANS_HOME%/bin;%XMLBEANS_LIB%;

 

1.  编写xmlschema文件(扩展名为.xsd,也可以用xml实例通过inst2xsd命令生成)

Schema文件内容如下:

<?xml version="1.0" encoding="GBK" standalone="yes"?>

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">

    <xs:element name="config">

       <xs:complexType>

           <xs:sequence>

              <xs:element name="name" type="xs:string"/>

              <xs:element name="nationality" type="xs:string"/>

              <xs:element name="age" type="xs:int"/>

           </xs:sequence>

       </xs:complexType>

    </xs:element>

</xs:schema>

 

2.  编写命名空间与包结构映射文件(扩展名为.xsdconfig

文件内容如下:

<xd:config xmlns:xd="http://xml.apache.org/xmlbeans/2004/02/xbean/config">

    <xd:namespace uri="##any">

       <xd:package>org.chris.config</xd:package>

    </xd:namespace>

</xd:config>

 

3.  编译生成jar(使用xmlbeans提供的scomp命令)

格式:scomp –out[jar名称及位置][schema名称及位置][xsdconfig名称及位置]

e.g. scomp -out config.jar d:/config.xsd d:/config.xsdconfig

执行命令后生成config.jar

 

4.  需解析的xml文件(d:/config.xml

其内容为:

<?xml version="1.0" encoding="GBK"?>

<config>

    <name>Chris</name>

    <nationality>P.R.China</nationality>

    <age>20</age>

</config>

 

5.  生成工具包的使用(工具类的调用)

代码如下:

File xmlFile = new File("d://config.xml");

ConfigDocument doc = ConfigDocument.Factory.parse(xmlFile);

String name = doc.getConfig().getName();

String nationality = doc.getConfig().getNationality();

Integer age = doc.getConfig().getAge();

 

至此,完成了xmlbeans的生成及调用。