JavaでXMLを読み込みする方法を解説!概要や出力方法も合わせて紹介
  • facebookページ
  • twitterページ
  • 2021.04.01

    JavaでXMLを読み込みする方法を解説!概要や出力方法も合わせて紹介

    XMLって何?

    XML(Extensible Markup Language)とは、任意の用途向けにデータ構造をシンプルに表現したマークアップ言語のことです。

    マークアップ言語とは、タグと値のセットで構成され、文章を構造化する言語をいいます。

    例えば、Webサイト作成で使われる HTML言語 が有名どころのマークアップ言語ですね。

    HTMLがWebサイトの情報を記述するる言語に対し、XMLはデータ交換のための汎用のデータ形式となっています。

    XMLの主な特徴
    • インターネット上での使いやすさ
    • 広くさまざまなアプリケーションをサポート
    • XML文書を処理するプログラムを簡単に記述可能
    • オプション機能を可能な限りゼロに
    • 規則に従っており簡潔である
    • 読みやすくて分かりやすい
    • すぐに作成可能

    このようなの特徴があるのがXMLです。

    また、XMLで書かれた文書のことを「XMLドキュメント」と言います。

    XMLドキュメントは、タグと値のセットで文書を記述していきます。

    文書の記述ルールは下記の通りです。

    要素名のタグ <要素名> を用意し、この中に内容・値を記述します。

    要素名には属性も付けられるようになっています。

    そして、 </要素名> で要素タグを閉じます。

    このルールに則って、記述したXML文書のサンプルが下記の通りです。

    JavaでXMLの読み込みサンプル

    本章では、JavaでXMLを読み込む方法とそのサンプルを確認しましょう。

    JavaでXMLを読み込む際に使う主なAPIには、下記の4種類があります。

    JavaでXMLを読み込むAPI
    • DOM(Document Object Model)
    • SAX(Simple API for XML Processing)
    • StAX(Streaming API for XML)
    • XPath(XML Path Language)

    それぞれについて、簡単に説明とサンプルを紹介します。

    DOM(Document Object Model)

    DOMは、要素がノードで表現され、ノードの関係がノードツリーで表現されたものです。

    ノードは節や集合点といった意味の言葉ですね。

    ツリー構造は、パソコン内のフォルダやファイルにも使われている表現方法で、これを用いた要素の検索と操作が得意とされています。

    DOMでXMLファイルを読み込むサンプルは、下記の通りです。

    SAX(Simple API for XML Processing)

    SAXは、先頭から順番に要素を1つずつイベントの連続として読み込むものです。

    これによって、プログラムはイベントに合わせて要素や属性を受け取り、イベントに対応するメソッドで処理ができるようになっています。

    必要な要素の情報を簡単に取得できる特徴がある一方で、XMLのツリー構造を意識したプログラミングは難しいとされています。

    SAXでXMLファイルを読み込むサンプルは、下記の通りです。

    StAX(Streaming API for XML)

    StAXは、SAXと同じくイベント連続として読み込むものです。

    SAXとの違いは、イベントの取り扱い方ですね。

    StAXはPull型であり、イベントの種類をStAXのクラスに問い合わせ、必要な処理を自身で呼び出します

    SAXよりも制限が緩く、決まったクラスやインターフェイスを継承・実装する必要がないという特徴があります。

    StAXでXMLファイルを読み込むサンプルは、下記の通りです。

    XPath(XML Path Language)

    XPathは、XMLの検索方法の1つでデータベースへのSQLに似ているものです。

    他のAPIとは異なり、XPath構文で検索条件を記述してXMLに問い合わせると、条件を満たす要素・テキストを簡単に取得できます。

    必要な情報をダイレクトかつ短いプログラム行数で取得できるのが特徴です。

    XPathでXMLファイルを読み込むサンプルは、下記の通りです。

    JavaでXMLを出力する方法

    ここまで、JavaでXMLを読み込む方法を解説しました。

    Javaでは、XMLファイルを出力することも可能です。

    もし、XMLファイルの出力方法を知りたい場合は、下記の記事で詳しく解説していますので、参考にしてみてください。

    【関連記事】

    ▶︎【Java】XMLファイルを出力するサンプルコードを紹介!



    優良フリーランス案件多数掲載中!
    フリーランスエンジニアの案件をお探しなら
    ポテパンフリーランス

    この記事をシェア

    • Facebookシェア
    • Twitterシェア
    • Hatenaシェア
    • Lineシェア
    pickup









    ABOUT US

    ポテパンはエンジニアと企業の最適なマッチングを追求する企業です。

    READ MORE