Java XML パーサー
JavaのXMLパーサーは、XMLデータを操作するために使用されます。XMLはデータを輸送または保存するために広く使用される技術です。そのため、多くのJava XMLパーサーが利用可能です。
JavaのXMLパーサー
-
- DOMパーサー
-
- SAXパーサー
-
- StAXパーサー
- JAXB
JavaでXMLパースのために利用できる他のAPIには、JDOMやJiBXなどもあります。このJava XMLパーサーチュートリアルは、さまざまな種類のXML処理APIを探索し、XMLの読み取り、書き込み、編集などの一般的なタスクを学ぶことを目的としています。
Java XML パーサー – DOM
DOMパーサーは学びやすいJavaのXMLパーサーです。DOMパーサーはXMLファイルをメモリに読み込み、ノードごとに走査してXMLを解析することができます。DOMパーサーは小さなファイルには適していますが、ファイルサイズが大きくなると処理が遅くなり、メモリを多く消費します。
-
- XML ファイルの読み込み この記事では、DOM パーサーを使用して XML ファイルをオブジェクトにパースする方法を紹介します。
-
- XML ファイルの書き込み この記事では、DOM パーサーを使用してオブジェクトデータを XML ファイルに書き込む方法を説明します。
- XML ファイルの編集 DOM パーサーを使用して XML データを編集することもできます。この記事では、DOM パーサーを使用して、要素の追加、要素の削除、要素値の編集、属性の編集を行う方法を示しています。
JavaのXMLパーサーであるSAX
JavaのSAXパーサーは、XMLドキュメントをパースするためのAPIを提供しています。SAXパーサーはDOMパーサーとは異なり、完全なXMLをメモリにロードせずに逐次的にXMLドキュメントを読み込みます。これはイベントベースのパーサーであり、XMLファイルをパースするためには、私たち自身がハンドラークラスを実装し、コールバックメソッドを使う必要があります。時間とメモリ使用量の面で、大きなXMLファイルに対してDOMパーサーよりも効率的です。
- XMLファイルを読む SAXパーサーを使用してオブジェクトのリストにXMLファイルを読み込むためのCallback Handlerクラスの作成方法を学びます。
StAX(スタックス)は、Javaで使用されるXMLパーサーです。
JavaのStreaming API for XML(Java StAX)は、XMLの処理のための実装を提供します。StAXには、カーソルベースのAPIとイテレータベースのAPIの2つのセットがあります。私は、このJava XMLパーサーについてさまざまな記事で詳しく取り上げています。
-
- StAX イテレータ API を使用して XML ファイルを読み取る このチュートリアルでは、Java の StAX (XMLEventReader) を使用して XML を反復処理する方法を学びます。
-
- StAX イテレータ API を使用して XML ファイルを書き込む このチュートリアルでは、StAX イテレータベースの API (XMLEventWriter) を使用して Java で XML ファイルを書き込む方法を見ていきます。
-
- StAX カーソル API を使用して XML ファイルを読み取る この記事では、StAX カーソル API (XMLStreamReader) を使用して XML データをオブジェクトに読み取る方法を示しています。
- StAX カーソル API を使用して XML ファイルを書き込む Java の StAX カーソル API は、XML を作成して出力するのが非常にシンプルです。XMLStreamWriter オブジェクトを作成し、データを書き込む必要があります。このチュートリアルでは、詳細な例を使用して詳しく説明します。
JavaのXMLパーサー、JDOM
JDOMは、XMLドキュメントを簡単に読み込み、編集、書き込むための素晴らしいJava XMLパーサーAPIを提供しています。JDOMは、SAXパーサー、DOMパーサー、STAXイベントパーサー、およびSTAXストリームパーサーの中から適切な実装を選択するためのラッパークラスを提供しています。JDOMを使用する利点は、SAXパーサーからDOMパーサー、STAXパーサーに簡単に切り替えることができ、クライアントアプリケーションが実装を選択するためのファクトリーメソッドを提供することができることです。
-
- JDOMを使用してXMLファイルを読み込む方法について学びます。JDOM XMLパーサーを使用して、XMLファイルをオブジェクトに変換する方法を説明します。
-
- JDOMを使用してJavaでXMLファイルを書き込む方法について学びます。JDOMドキュメントには、要素や属性を簡単に作成するためのメソッドが用意されています。XMLOutputterクラスを使用すると、ドキュメントを任意のOutputStreamまたはWriterオブジェクトに書き込むことができます。
- JDOMを使用すると、XMLファイルを素早く編集することができます。JDOMを使用すると、コードがシンプルで読みやすくなります。このチュートリアルでは、要素の追加、要素の削除、要素の値の編集、属性の値の編集方法について学びます。
JavaのXMLパーサー – JAXB
Java Architecture for XML Binding(JAXB)は、オブジェクトをXMLに、またXMLをオブジェクトに簡単に変換するためのAPIを提供します。JAXBは、独立したプロジェクトとして開発されましたが、広く利用され、ついにJava 6のJDKの一部となりました。
- JAXBチュートリアル JAXBを使うと非常に簡単で、アノテーションを使用します。Javaオブジェクトにアノテーションを付けてXMLの作成手順を指示し、Marshallerを作成してオブジェクトをXMLに変換する必要があります。UnmarshallerはXMLをJavaオブジェクトに変換するために使用されます。このチュートリアルでは、最も広く使用されるJAXBアノテーションとJavaオブジェクトをXMLに変換する方法(マーシャリング)およびXMLをJavaオブジェクトに変換する方法(アンマーシャリング)について学びます。
Java XMLパーサー – JiBX
JiBXは、XMLデータをJavaオブジェクトに変換したり、逆に変換したりする非常に強力なフレームワークです。このフレームワークは、データ転送の形式としてXMLが使用されるアプリケーション統合に非常に役立ちます。例えば、Webサービスやメッセージ指向モデル(MOM)に基づくレガシーシステムの統合などが挙げられます。
- JiBXチュートリアル XML変換のためのJAXBやXMLBeansなど、さまざまなフレームワークがありますが、JiBXはXMLバインディングおよび変換プロセスのアプローチが異なります。JiBXは、Antスクリプトを使用してコンパイル時に生成されるユーティリティクラスを介してこれらのタスクを実行します。このアプローチにより、他のパーサーとの伝統的な2段階プロセスから単一のステップによる処理時間の削減が可能となります。
XPathを日本語にネイティブで言い換える。
XPathは、XMLドキュメントの一部を定義するための文法を提供します。XPath式は、クエリ文字列に基づいてXMLドキュメントの一部を選択するためのクエリ言語です。XPath式を使用することで、クエリ文字列を満たす任意のXMLドキュメント内のノードを見つけることができます。
- XPath Tutorial javax.xml.xpath package provides XPath support in Java. To create XPathExpression, XPath API provide factory methods. In this tutorial we will use XPath query language to find out elements satisfying given criteria.
さまざまなJava XMLパーサータスク
-
- エクリプスでXSDからサンプルXMLを生成します。ウェブサービスを開発する際にはXSDを使用することが一般的で、そのウェブサービスをテストするためにはXSDファイルからXMLを生成する必要があります。エクリプスでは、XSDからXMLを簡単に生成する方法が提供されています。
XMLをXSDに対してバリデーションします。JavaのXMLバリデーションAPIを使用して、XMLをXSDに対してバリデーションできます。このチュートリアルでは、javax.xml.validation.Validatorクラスを使用して、xmlファイルをxsdファイルに対してバリデーションする方法を学びます。
Javaのプロパティファイルには、通常、Javaアプリケーションの設定パラメータを保存します。プロパティファイルはキーと値のペアで普通のプロパティファイルであるか、XMLファイルである場合もあります。この例では、プロパティXMLファイルを作成し、XMLプロパティファイルからプロパティを読み込む方法について学びます。
SOAPはXmlベースの転送プロトコルです。SOAPはSimple Object Access Protocolの略で、構造化された型付き情報のやり取りに使用される軽量なメカニズムです。XMLベースであるため、言語やプラットフォームに依存しません。このチュートリアルでは、SOAP XMLについて学び、Liquid XML Studioソフトウェアを使用してどのように作成するかを学びます。
XMLドキュメントを整形するためのメソッドや、XMLドキュメントを文字列に変換したり、逆に文字列をXMLドキュメントに変換するためのメソッドを持つユーティリティクラスです。
時にはJavaでプログラミングを行っていると、実際にはXMLである文字列を取得する場合がありますが、これをXMLドキュメント(org.w3c.dom.Document)に変換する必要があります。デバッグの目的や他の関数に送信するために、Documentオブジェクトを文字列に変換することもあります。文字列からXMLドキュメントに、およびXMLドキュメントから文字列に変換するための2つのユーティリティメソッドです。
今後、さらにJava XMLパーサーのチュートリアルをこちらに追加していきますので、今後の利用のためにブックマークしておくのを忘れないでください。