Java-xml-quick-guide
Java XML-概要
XMLとは何ですか?
XMLは、プレーンテキスト形式でデータを保存および転送するために設計されたシンプルなテキストベースの言語です。 Extensible Markup Languageの略です。 以下は、XMLの主要な機能の一部です。
- XMLはマークアップ言語です。
- XMLは、HTMLのようなタグベースの言語です。
- XMLタグは、HTMLのように事前定義されていません。
- 独自のタグを定義できるため、拡張可能言語と呼ばれます。
- XMLタグは、自己記述的になるように設計されています。
- XMLは、データストレージとデータ転送に関するW3C勧告です。
例
利点
XMLが提供する利点は次のとおりです-
- テクノロジーにとらわれない-XMLはプレーンテキストなので、テクノロジーに依存しません。 データストレージおよびデータ転送の目的で、あらゆるテクノロジーで使用できます。
- 人間が読める-XMLは単純なテキスト形式を使用します。 それは人間が読んで理解できるものです。
- 拡張可能-XMLでは、カスタムタグを非常に簡単に作成して使用できます。
- Allow Validation -XSD、DTD、およびXML構造を使用すると、簡単に検証できます。
デメリット
以下は、XMLを使用することの欠点です-
- 冗長構文-通常、XMLファイルには多くの繰り返し用語が含まれています。
- 冗長-冗長言語であるため、XMLファイルのサイズは送信およびストレージのコストを増加させます。
Java XML-パーサー
XML解析とは、データにアクセスしたりデータを変更したりするためにXMLドキュメントを通過することです。
XMLパーサーとは何ですか?
XMLパーサーは、XMLドキュメント内のデータにアクセスまたは変更する方法を提供します。 Javaは、XMLドキュメントを解析するための複数のオプションを提供します。 以下は、XMLドキュメントの解析に一般的に使用されるさまざまなタイプのパーサーです。
- Dom Parser -ドキュメントの完全なコンテンツをロードし、メモリ内に完全な階層ツリーを作成することにより、XMLドキュメントを解析します。
- SAX Parser -イベントベースのトリガーでXMLドキュメントを解析します。 完全なドキュメントをメモリにロードしません。
- * JDOMパーサー*-DOMパーサーと同様の方法で、より簡単な方法でXMLドキュメントを解析します。
- StAX Parser -SAXパーサーと同様の方法で、より効率的な方法でXMLドキュメントを解析します。
- XPath Parser -式に基づいてXMLドキュメントを解析し、XSLTと組み合わせて広く使用されます。
- DOM4J Parser -Java Collections Frameworkを使用してXML、XPath、およびXSLTを解析するJavaライブラリ。 DOM、SAX、およびJAXPのサポートを提供します。
オブジェクト指向の方法でXML解析を処理するために利用可能なJAXBおよびXSLT APIがあります。 このチュートリアルの以降の章で、各パーサーについて詳しく説明します。
Java DOMパーサー-概要
Document Object Model(DOM)は、World Wide Web Consortium(W3C)の公式勧告です。 プログラムがXMLドキュメントのスタイル、構造、コンテンツにアクセスして更新できるようにするインターフェイスを定義します。 DOMをサポートするXMLパーサーは、このインターフェイスを実装します。
使用する場合
次の場合は、DOMパーサーを使用する必要があります-
- ドキュメントの構造について多くを知る必要があります。
- XMLドキュメントの一部を移動する必要があります(たとえば、特定の要素を並べ替えたい場合があります)。
- XMLドキュメントの情報を複数回使用する必要があります。
あなたは何を得ますか?
DOMパーサーでXMLドキュメントを解析すると、ドキュメントのすべての要素を含むツリー構造が返されます。 DOMは、ドキュメントの内容と構造を調べるために使用できるさまざまな機能を提供します。
利点
DOMは、ドキュメント構造を操作するための一般的なインターフェイスです。 その設計目標の1つは、1つのDOM準拠パーサー用に記述されたJavaコードを、変更を行わずに他のDOM準拠パーサーで実行することです。
DOMインターフェース
DOMはいくつかのJavaインターフェースを定義します。 最も一般的なインターフェイスは次のとおりです-
- Node -DOMの基本データ型。
- 要素-扱うオブジェクトの大部分は要素です。
- Attr -要素の属性を表します。
- テキスト-要素または属性の実際のコンテンツ。
- ドキュメント-XMLドキュメント全体を表します。 Documentオブジェクトは、多くの場合、DOMツリーと呼ばれます。
一般的なDOMメソッド
あなたがDOMで作業しているとき、あなたが頻繁に使用するいくつかの方法があります-
- * Document.getDocumentElement()*-ドキュメントのルート要素を返します。
- * Node.getFirstChild()*-指定されたノードの最初の子を返します。
- * Node.getLastChild()*-指定されたノードの最後の子を返します。
- * Node.getNextSibling()*-これらのメソッドは、指定されたノードの次の兄弟を返します。
- * Node.getPreviousSibling()*-これらのメソッドは、指定されたノードの前の兄弟を返します。
- * Node.getAttribute(attrName)*-特定のノードについて、要求された名前の属性を返します。
Java DOM Parser-XMLドキュメントの解析
JDOMを使用する手順
以下は、JDOMパーサーを使用してドキュメントを解析するときに使用される手順です。
- XML関連のパッケージをインポートします。
- SAXBuilderを作成します。
- ファイルまたはストリームからドキュメントを作成する
- ルート要素を抽出する
- 属性を調べる
- サブ要素を調べる
XML関連のパッケージをインポートする
DocumentBuilderを作成する
ファイルまたはストリームからドキュメントを作成する
ルート要素を抽出する
属性を調べる
サブ要素を調べる
デモ例
解析する必要がある入力xmlファイルは次のとおりです-
DomParserDemo.java
これは、次の結果を生成します-
Java DOM Parser-XMLドキュメントのクエリ
デモ例
ここにクエリする必要がある入力xmlファイルがあります-
QueryXmlFileDemo.java
これは、次の結果を生成します-
Java DOMパーサー-XMLドキュメントの作成
デモ例
ここに作成する必要があるXMLがあります-
CreateXmlFileDemo.java
これは、次の結果を生成します-
Java DOMパーサー-XMLドキュメントの変更
デモ例
変更する必要がある入力xmlファイルは次のとおりです-
ModifyXmlFileDemo.java
これは、次の結果を生成します-
Java SAXパーサー-概要
SAX(Simple API for XML)は、XMLドキュメント用のイベントベースのパーサーです。 DOMパーサーとは異なり、SAXパーサーは解析ツリーを作成しません。 SAXはXMLのストリーミングインターフェイスです。つまり、SAXを使用するアプリケーションは、処理中のXMLドキュメントに関するイベント通知を、ドキュメントの先頭から始まり、ドキュメントの終了で終わる順番に、要素と属性で受け取ることを意味します。 ROOT要素。
- 整形式のXMLドキュメントを構成するトークンを認識して、XMLドキュメントを上から下に読み取ります。
- トークンは、ドキュメントに表示されるのと同じ順序で処理されます。
- パーサーが発生したときに遭遇したトークンの性質をアプリケーションプログラムに報告します。
- アプリケーションプログラムは、パーサーに登録する必要がある「イベント」ハンドラーを提供します。
- トークンが識別されると、ハンドラー内のコールバックメソッドが関連情報とともに呼び出されます。
使用する場合
あなたはSAXパーサーを使用する必要があります-
- XMLドキュメントを上から下に直線的に処理できます。
- ドキュメントは深くネストされていません。
- DOMツリーが大量のメモリを消費する非常に大きなXMLドキュメントを処理しています。 典型的なDOM実装では、10バイトのメモリを使用して1バイトのXMLを表します。
- 解決すべき問題は、XMLドキュメントの一部のみです。
- パーサーがデータを見るとすぐにデータが利用できるため、SAXはストリームを介して到着するXMLドキュメントに適しています。
SAXの欠点
- XMLドキュメントは順方向のみで処理されるため、XMLドキュメントへのランダムアクセスはありません。
- パーサーが表示したデータを追跡する必要がある場合、またはアイテムの順序を変更する必要がある場合は、コードを記述し、データを独自に保存する必要があります。
ContentHandlerインターフェース
このインターフェイスは、SAXパーサーがアプリケーションプログラムにXMLドキュメントのコンポーネントを通知するために使用するコールバックメソッドを指定します。
- * void startDocument()*-ドキュメントの先頭で呼び出されます。
- * void endDocument()*-文書の終わりに呼び出されます。
- * void startElement(String uri、String localName、String qName、Attributes atts)*-要素の先頭で呼び出されます。
- * void endElement(String uri、String localName、String qName)*-要素の終わりに呼び出されます。
- * void characters(char [] ch、int start、int length)*-文字データが検出されたときに呼び出されます。
- * void ignorableWhitespace(char [] ch、int start、int length)*-DTDが存在し、無視可能な空白が見つかったときに呼び出されます。
- * void processingInstruction(String target、String data)*-処理命令が認識されると呼び出されます。
- * void setDocumentLocator(Locator locator))*-文書内の位置を識別するために使用できるロケーターを提供します。
- * void skippedEntity(String name)*-未解決のエンティティが見つかったときに呼び出されます。
- * void startPrefixMapping(String prefix、String uri)*-新しい名前空間マッピングが定義されると呼び出されます。
- * void endPrefixMapping(String prefix)*-名前空間定義がスコープを終了するときに呼び出されます。
属性インターフェイス
このインターフェイスは、要素に接続された属性を処理するためのメソッドを指定します。
- * int getLength()*-属性の数を返します。
- * String getQName(int index)*
- * String getValue(int index)*
- * String getValue(String qname)*
Java SAXパーサー-XMLドキュメントの解析
デモ例
これは、解析する必要がある入力xmlファイルです-
UserHandler.java
SAXParserDemo.java
これは、次の結果を生成します-
Java SAXパーサー-XMLドキュメントのクエリ
デモ例
以下は、rollnoを照会するために必要な入力テキストファイルです。
UserHandler.java
SAXQueryDemo.java
これは、次の結果を生成します-
Java SAXパーサー-XMLドキュメントの作成
- XMLドキュメントの作成には、SAXパーサーを使用するよりも、StAXパーサーを使用することをお勧めします。 同じことについては、Java StAX Parserセクションを参照してください。*
Java SAXパーサー-XMLドキュメントの変更
デモ例
</marks>タグの最後に<Result> Pass <Result/>を追加して変更する必要がある入力XMLファイルを次に示します。
SAXModifyDemo.java
これは、次の結果を生成します-
Java JDOMパーサー-概要
JDOMは、XMLドキュメントを解析するためのオープンソースのJavaベースのライブラリです。 通常、Java開発者に優しいAPIです。 Javaに最適化されており、ListやArraysなどのJavaコレクションを使用します。
JDOMはDOM APIとSAX APIで動作し、2つの長所を組み合わせます。 メモリフットプリントが小さく、SAXとほぼ同じ速度です。
環境設定
JDOMパーサーを使用するには、アプリケーションのクラスパスにjdom.jarが必要です。 ダウンロードhttp://www.jdom.org/downloads/[jdom-2.0.5.zip。]
使用する場合
次の場合、JDOMパーサーを使用する必要があります-
- XMLドキュメントの構造について多くを知る必要があります。
- XMlドキュメントの一部を移動する必要があります(たとえば、特定の要素を並べ替えたい場合があります)。
- XMLドキュメントの情報を複数回使用する必要があります。
- あなたはJava開発者であり、XMLのJava最適化解析を活用したいと考えています。
あなたは何を得ますか?
JDOMパーサーでXMLドキュメントを解析すると、アプリケーションのメモリフットプリントに影響を与えることなく、ドキュメントのすべての要素を含むツリー構造を取得する柔軟性が得られます。
JDOMは、ドキュメントが適切に構造化され、構造がわかっている場合に、XMLドキュメントの内容と構造を調べるために使用できるさまざまなユーティリティ関数を提供します。
利点
JDOMは、Java開発者にXML解析コードの柔軟性と保守性を提供します。 これは、軽量で迅速なAPIです。
JDOMクラス
JDOMはいくつかのJavaクラスを定義します。 最も一般的なクラスは次のとおりです-
- ドキュメント-XMLドキュメント全体を表します。 Documentオブジェクトは、多くの場合、DOMツリーと呼ばれます。
- Element -XML要素を表します。 要素オブジェクトには、子要素、テキスト、属性、名前空間を操作するメソッドがあります。
- 属性-要素の属性を表します。 属性には、属性の値を取得および設定するメソッドがあります。 親と属性タイプがあります。
- テキスト-XMLタグのテキストを表します。
- コメント-XMLドキュメント内のコメントを表します。
一般的なJDOMメソッド
あなたがJDOMで作業しているとき、あなたが頻繁に使用するいくつかの方法があります-
- * SAXBuilder.build(xmlSource)()*-xmlソースからJDOMドキュメントをビルドします。
- * Document.getRootElement()*-XMLのルート要素を取得します。
- * Element.getName()*-XMLノードの名前を取得します。
- * Element.getChildren()*-要素のすべての直接の子ノードを取得します。
- * Node.getChildren(Name)*-指定された名前を持つすべての直接の子ノードを取得します。
- * Node.getChild(Name)*-指定された名前を持つ最初の子ノードを取得します。
Java JDOMパーサー-XMLドキュメントの解析
JDOMを使用する手順
以下は、JDOMパーサーを使用してドキュメントを解析するときに使用される手順です。
- XML関連のパッケージをインポートします。
- SAXBuilderを作成する
- ファイルまたはストリームからドキュメントを作成する
- ルート要素を抽出する
- 属性を調べる
- サブ要素を調べる
XML関連のパッケージをインポートする
DocumentBuilderを作成する
ファイルまたはストリームからドキュメントを作成する
ルート要素を抽出する
属性を調べる
サブ要素を調べる
デモ例
これは、解析する必要がある入力xmlファイルです-
DomParserDemo.java
これは、次の結果を生成します-
Java JDOMパーサー-XMLドキュメントのクエリ
デモ例
ここにクエリする必要がある入力xmlファイルがあります-
QueryXmlFileDemo.java
これは、次の結果を生成します-
Java JDOMパーサー-XMLドキュメントの作成
デモ例
ここに作成する必要があるXMLファイルがあります-
CreateXmlFileDemo.java
これは、次の結果を生成します-
Java JDOMパーサー-XMLドキュメントの変更
デモ例
変更する必要がある入力テキストファイルは次のとおりです-
ModifyXmlFileDemo.java
これは、次の結果を生成します-
Java StAXパーサー-概要
StAXは、SAXパーサーと同様の方法でXMLドキュメントを解析するJavaベースのAPIです。 しかし、2つのAPIの間には2つの大きな違いがあります-
- StAXはPULL APIですが、SAXはPUSH APIです。 つまり、StAXパーサーの場合、クライアントアプリケーションは、必要に応じてStAXパーサーにXMLから情報を取得するように要求する必要があります。 ただし、SAXパーサーの場合、SAXパーサーがクライアントアプリケーションに情報が利用可能であることを通知すると、クライアントアプリケーションは情報を取得する必要があります。
- StAX APIは、XMLドキュメントの読み取りと書き込みができます。 SAX APIを使用すると、XMLファイルのみを読み取ることができます。
環境設定
StAXパーサーを使用するには、アプリケーションのクラスパスにstax.jarが必要です。
以下は、StAX APIの機能です-
- 整形式のXMLドキュメントを構成するトークンを認識して、XMLドキュメントを上から下に読み取ります。
- トークンは、ドキュメントに表示されるのと同じ順序で処理されます。
- パーサーが発生したときに遭遇したトークンの性質をアプリケーションプログラムに報告します。
- アプリケーションプログラムは、イテレータとして機能し、イベントを反復処理して必要な情報を取得する「イベント」リーダーを提供します。 別の利用可能なリーダーは、XMLノードへのポインタとして機能する「カーソル」です。
- イベントが識別されると、イベントオブジェクトからXML要素を取得し、さらに処理できます。
使用する場合
あなたはStAXパーサーを使用する必要があります-
- XMLドキュメントを上から下に直線的に処理できます。
- ドキュメントは深くネストされていません。
- DOMツリーが大量のメモリを消費する非常に大きなXMLドキュメントを処理しています。 典型的なDOM実装では、10バイトのメモリを使用して1バイトのXMLを表します。
- 解決すべき問題は、XMLドキュメントの一部のみです。
- パーサーがデータを確認するとすぐにデータが利用できるため、StAXはストリームを介して到着するXMLドキュメントに対して適切に機能します。
SAXの欠点
- XMLドキュメントへのランダムアクセスはありません。これは、転送のみの方法で処理されるためです。
- パーサーが見たデータを追跡する必要がある場合、またはパーサーがアイテムの順序を変更した場所を追跡する必要がある場合は、コードを記述してデータを独自に保存する必要があります。
XMLEventReaderクラス
このクラスは、XMLドキュメントの解析中に発生するイベントを反復処理するために使用できるイベントの反復子を提供します。
- * StartElement asStartElement()*-要素の値と属性を取得するために使用されます。
- * EndElement asEndElement()*-要素の終わりに呼び出されます。
- * Characters asCharacters()*-CDATA、空白などの文字を取得するために使用できます。
XMLEventWriterクラス
このインターフェイスは、イベントを作成するためのメソッドを指定します。
- * add(Event event)*-要素を含むイベントをXMLに追加します。
XMLStreamReaderクラス
このクラスは、XMLドキュメントの解析中に発生するイベントを反復処理するために使用できるイベントの反復子を提供します。
- * int next()*-次のイベントを取得するために使用されます。
- * boolean hasNext()*-さらにイベントが存在するかどうかを確認するために使用されます。
- * String getText()*-要素のテキストを取得するために使用されます。
- * String getLocalName()*-要素の名前を取得するために使用されます。
XMLStreamWriterクラス
このインターフェイスは、イベントを作成するためのメソッドを指定します。
- * writeStartElement(String localName)*-指定された名前の開始要素を追加します。
- * writeEndElement(String localName)*-指定された名前の終了要素を追加します。
- * writeAttribute(String localName、String value)*-属性を要素に書き込みます。
Java StAXパーサー-XMLドキュメントの解析
デモ例
解析する必要がある入力xmlファイルは次のとおりです-
StAXParserDemo.java
これは、次の結果を生成します-
Java StAXパーサー-XMLドキュメントのクエリ
デモ例
解析する必要がある入力xmlファイルは次のとおりです-
StAXParserDemo.java
これは、次の結果を生成します-
Java StAXパーサー-XMLドキュメントの作成
デモ例
ここに作成する必要があるXMLがあります-
StAXCreateXMLDemo.java
これは、次の結果を生成します-
Java StAXパーサー-XMLドキュメントの変更
デモ例
変更する必要があるXMLは次のとおりです-
StAXModifyDemo.java
これは、次の結果を生成します-
Java XPathパーサー-概要
XPathは、World Wide Web Consortium(W3C)の公式勧告です。 XMLファイル内の情報を検索する言語を定義します。 XMLドキュメントの要素と属性をトラバースするために使用されます。 XPathは、XMLドキュメントから関連情報を照会するために使用できるさまざまなタイプの式を提供します。
XPathとは何ですか?
- 構造の定義-XPathは、要素、属性、テキスト、名前空間、処理命令、コメント、ドキュメントノードなどのXMLドキュメントの部分を定義します。
- Path Expressions -XPathは、XMLドキュメントの選択ノードまたはノードのリストなどの強力なパス式を提供します。
- 標準関数-XPathは、文字列値、数値、日付と時刻の比較、ノードとQNameの操作、シーケンス操作、ブール値などの操作のための標準関数の豊富なライブラリを提供します。
- * XSLTの主要部分*-XPathはXSLT標準の主要な要素の1つであり、XSLTドキュメントを操作するにはXPathの十分な知識が必要です。
- * W3C勧告*-XPathはWorld Wide Web Consortium(W3C)の公式勧告です。
XPath式
XPathはパス式を使用して、XMLドキュメントからノードまたはノードのリストを選択します。 以下は、XMLドキュメントから任意のノード/ノードのリストを選択するための便利なパスと式のリストです。
Sr.No. | Expression & Description |
---|---|
1 |
node-name 指定された名前「nodename」を持つすべてのノードを選択します |
2 |
/ ルートノードから選択を開始 |
3 |
// // 選択は、選択に一致する現在のノードから開始されます |
4 |
. 現在のノードを選択します |
5 |
.. .. 現在のノードの親を選択します |
6 |
@ 属性を選択します |
7 |
student 例-「student」という名前のすべてのノードを選択します |
8 |
class/student 例-クラスの子であるすべての学生要素を選択する |
9 |
//student ドキュメント内のどこにいても、すべての学生要素を選択します |
述語
述語は、特定のノードまたは特定の値を含むノードを見つけるために使用され、[…]を使用して定義されます。
Expression | Result |
---|---|
/class/student[1] | Selects the first student element that is the child of the class element. |
/class/student[last()] | Selects the last student element that is the child of the class element. |
/class/student[last()-1] | Selects the last but one student element that is the child of the class element. |
//student[@rollno = '493'] | Selects all the student elements that have an attribute named rollno with a value of '493' |
Java XPath Parser-XMLドキュメントの解析
XPathを使用する手順
以下は、XPathパーサーを使用してドキュメントを解析するときに使用される手順です。
- XML関連のパッケージをインポートします。
- DocumentBuilderを作成します。
- ファイルまたはストリームからドキュメントを作成します。
- XpathオブジェクトとXPathパス式を作成します。
- * XPath.compile()を使用してXPath式をコンパイルし、 XPath.evaluate()*を介してコンパイルされた式を評価して、ノードのリストを取得します。
- ノードのリストを反復処理します。
- 属性を調べます。
- サブ要素を調べます。
XML関連のパッケージをインポートする
DocumentBuilderを作成する
ファイルまたはストリームからドキュメントを作成する
XPathを構築する
パス式を準備して評価する
NodeListを反復処理する
属性を調べる
サブ要素を調べる
デモ例
これは、解析する必要がある入力テキストファイルです-
XPathParserDemo.java
これは、次の結果を生成します-
Java XPath Parser-XMLドキュメントのクエリ
デモ例
ここにクエリする必要がある入力テキストファイルがあります-
XPathParserDemo.java
これは、次の結果を生成します-
Java XPath Parser-XMLドキュメントの作成
- XPathパーサーは、XMLドキュメントのみをナビゲートするために使用されます。 XMLの作成にはDOMパーサーを使用することをお勧めします。 同じことについては、Java DOM Parserセクションを参照してください。*
Java XPathパーサー-XMLドキュメントの変更
- XPathパーサーは、XMLドキュメントのみをナビゲートするために使用されます。 XMLの変更にはDOMパーサーを使用することをお勧めします。 同じことについては、Java DOM Parserセクションを参照してください。*
Java DOM4Jパーサー-概要
DOM4Jは、XMLドキュメントを解析するためのオープンソースのJavaベースのライブラリです。 これは、柔軟性が高く、メモリ効率の高いAPIです。 Javaに最適化されており、リストや配列などのJavaコレクションを使用します。
DOM4Jは、DOM、SAX、XPath、およびXSLTで動作します。 非常に低いメモリフットプリントで大きなXMLドキュメントを解析できます。
環境設定
DOM4Jパーサーを使用するには、アプリケーションのクラスパスにdom4j-1.6.1.jarおよびjaxen.jarが必要です。 ダウンロードhttps://sourceforge.net/projects/dom4j/files/latest/download?source=files[dom4j-1.6.1.zip。]
使用する場合
次の場合は、DOM4Jパーサーを使用する必要があります-
- XMLドキュメントの構造について多くを知る必要があります。
- XMLドキュメントの一部を移動する必要があります(たとえば、特定の要素を並べ替えたい場合があります)。
- XMLドキュメントの情報を複数回使用する必要があります。
- あなたはJava開発者であり、XMLのJava最適化解析を活用したいと考えています。
あなたは何を得ますか?
DOM4JパーサーでXMLドキュメントを解析すると、アプリケーションのメモリフットプリントに影響を与えることなく、ドキュメントのすべての要素を含むツリー構造を取得する柔軟性が得られます。
DOM4Jは、ドキュメントが適切に構造化され、構造がわかっている場合に、XMLドキュメントの内容と構造を調べるために使用できるさまざまなユーティリティ関数を提供します。
DOM4Jは、XPath式を使用してXMLドキュメントをナビゲートします。
利点
DOM4Jは、Java開発者にXML解析コードの柔軟性と容易な保守性を提供します。 これは、軽量で迅速なAPIです。
DOM4Jクラス
DOM4JはいくつかのJavaクラスを定義します。 最も一般的なクラスは次のとおりです-
- ドキュメント-XMLドキュメント全体を表します。 Documentオブジェクトは、多くの場合、DOMツリーと呼ばれます。
- Element -XML要素を表します。 要素オブジェクトには、子要素、テキスト、属性、名前空間を操作するメソッドがあります。
- 属性-要素の属性を表します。 属性には、属性の値を取得および設定するメソッドがあります。 親と属性タイプがあります。
- Node -Element、Attribute、またはProcessingInstructionを表します。
一般的なDOM4Jメソッド
あなたがDOM4Jで作業しているとき、あなたが頻繁に使用するいくつかの方法があります-
- * SAXReader.read(xmlSource)()*-XMLソースからDOM4Jドキュメントを構築します。
- * Document.getRootElement()*-XMLドキュメントのルート要素を取得します。
- * Element.node(index)*-要素内の特定のインデックスでXMLノードを取得します。
- * Element.attributes()*-要素のすべての属性を取得します。
- * Node.valueOf(@Name)*-要素の指定された名前を持つ属性の値を取得します。
Java DOM4Jパーサー-XMLドキュメントの解析
DOM4Jを使用する手順
以下は、DOM4Jパーサーを使用してドキュメントを解析するときに使用される手順です。
- XML関連のパッケージをインポートします。
- SAXReaderを作成します。
- ファイルまたはストリームからドキュメントを作成します。
- document.selectNodes()を呼び出して、XPath式を使用して必要なノードを取得します
- ルート要素を抽出します。
- ノードのリストを反復処理します。
- 属性を調べます。
- サブ要素を調べます。
XML関連のパッケージをインポートする
DocumentBuilderを作成する
ファイルまたはストリームからドキュメントを作成する
ルート要素を抽出する
属性を調べる
サブ要素を調べる
デモ例
解析する必要がある入力xmlファイルは次のとおりです-
DOM4JParserDemo.java
これは、次の結果を生成します-
Java DOM4Jパーサー-XMLドキュメントのクエリ
デモ例
解析する必要がある入力xmlファイルは次のとおりです-
DOM4JQueryDemo.java
これは、次の結果を生成します-
Java DOM4Jパーサー-XMLドキュメントの作成
デモ例
ここに作成する必要があるXMLがあります-
CreateXmlFileDemo.java
これは、次の結果を生成します-
Java DOM4Jパーサー-XMLドキュメントの変更
デモ例
変更する必要があるXMLは次のとおりです-
DOM4jModifyXMLDemo.java
これは、次の結果を生成します-