4.6 高速パース機能のプロパティの使用方法
高速パース機能を使用するためには,XML Processorが独自に規定する次のプロパティを設定する必要があります。
プロパティの値には,nullまたはPreparsedObjectオブジェクトを設定します。設定するプロパティの値とその意味を次の表に示します。
プロパティに設定する値※ |
意味 |
---|---|
null |
解析時に解析結果オブジェクトを使用しない。 |
PreparsedObjectオブジェクト |
解析時に,指定した解析結果オブジェクトを使用する。 |
- 注※
-
指定が省略された場合は,nullが指定されたものとして扱います。
また,nullおよびPreparsedObjectオブジェクト以外の値が設定された場合は,プロパティが設定されているXMLパーサによって,次の例外が発生します。
-
DocumentBuilderFactoryの場合:IllegalArgumentException
-
SAXParserまたはXMLReaderの場合:SAXNotSupportedException
-
高速パース機能のプロパティは,次に示すXMLパーサのオブジェクトごとに設定する必要があります。解析結果オブジェクトの設定用メソッドを次の表に示します。次の表では,プロパティの設定に使用するメソッドを,クラス,インタフェースごとに示しています。
クラス,インタフェース |
メソッド |
---|---|
javax.xml.parsers.DocumentBuilderFactory |
setAttribute |
javax.xml.parsers.SAXParser |
setProperty |
org.xml.sax.XMLReader |
setProperty |
DocumentBuilder,SAXParser,およびXMLReaderで高速パース機能を使用する場合について,例を用いて説明します。