JAXP详细教程

By | 2015年12月1日

Tutorial

JAXP全面介绍,第1部分

JAXP全面介绍,第2部分

更改JAXP的解析引擎

方式一:设置System property

//使用DOM解析工厂
System.setProperty(“javax.xml.parsers.DocumentBuilderFactory”, “org.apache.xerces.jaxp.DocumentBuilderFactoryImpl”);
//使用SAX解析工厂
System.setProperty(“javax.xml.parsers.SAXParserFactory”, “org.apache.xerces.jaxp.SAXParserFactoryImpl”);

示例使用命名设置系统属性

java -D javax.xml.parsers.DocumentBuilderFactory=org.apache.xerces.jaxp.DocumentBuilderFactoryImpl DOMTest

方式二:使用jaxp.properties属性文件 (我在JDK1.7中没找到)

该文化在%JAVA_HOME%/jre/lib路径下

示例:

%JAVA_HOME%/jre/lib/jaxp.properties

javax.xml.parsers.DocumentBuilderFactory=org.apache.xerces.jaxp.DocumentBuilderFactoryImpl
javax.xml.parsers.SAXParserFactory=org.apache.xerces.jaxp.SAXParserFactoryImpl

方式三:jar包里META-INF/services下的文件

这是推荐方法,也是XML解析器最广泛采用的方式。

查看xercesImpl.jar/META-INF/services就可看到相关文件。

方式四:使用默认XML解析器

JAXP使用Xerces为默认解析器。