JDOM

JDOM
安定版リリース
2.0.6.1 / 2021年12月9日 ( 2021-12-09 )
リポジトリ
書かれたジャワ
オペレーティング·システムクロスプラットフォーム
タイプXMLバインディング
ライセンスApacheライセンスに類似
Webサイトjdom.org
LePUS3のJDOM
LePUS3のJDOM工場

JDOMは、 Javaプラットフォーム向けに特別に設計されたオープンソースのJavaベースのXML文書オブジェクトモデルです。Java言語の機能を活用できるように設計されました。[ 1 ] JDOMはDocument Object Model(DOM)およびSimple API for XML(SAX) と統合され、 XPathXSLTをサポートしています。[ 2 ] 外部パーサーを使用して文書を構築します。JDOMは、2000年3月からJason HunterとBrett McLaughlinによって開発されました。[ 3 ] JSR 102としてJavaコミュニティプロセスの一部となっていましたが、その後その取り組みは中止されました。[ 4 ]

ファイル「foo.xml」に次の XML ドキュメントが含まれているとします。

<shop name= "shop for geeks" location= "東京、日本" > <computer name= "iBook" price= "1200$" /> <comic_book name= "ドラゴンボール vol 1" price= "9$" /> <geekyness_of_shop price= "priceless" /> </shop>

次のように、JDOM を使用して XML ファイルを Java オブジェクトのツリーに解析できます。

SAXBuilder builder = new SAXBuilder (); Document doc = builder . build ( new FileInputStream ( "foo.xml" )); Element root = doc . getRootElement (); // root.getName() は "shop" // root.getAttributeValue("name") は "shop for geeks" // root.getAttributeValue("location") は "Tokyo, Japan" // root.getChildren() は 3 つの Element オブジェクトを含む java.util.List オブジェクトです。

ファイルまたは入力ストリームからドキュメント オブジェクトを作成したくない場合は、要素に対してドキュメント オブジェクトを作成できます。

Element root = new Element ( "shop" ); // ここで <shop></shop> がルートですDocument doc = new Document ( root ); // 指定された要素をルートとして新しいドキュメントを作成します

逆に、次の例のように、要素のツリーを構築し、そこから XML ファイルを生成することもできます。

Element root = new Element ( "shop" ); root . setAttribute ( "name" , "shop for geeks" ); root . setAttribute ( "location" , "Tokyo, Japan" ); Element item1 = new Element ( "computer" ); item1 . setAttribute ( "name" , "iBook" ); item1 . setAttribute ( "price" , "1200$" ); root . addContent ( item1 ); // 他の要素に対しても同様の手順を実行しますXMLOutputter outputter = new XMLOutputter (); outputter . output ( new Document ( root ), new FileOutputStream ( "foo2.xml" ));

参考文献

  1. ^ "JDOM" . Mavenリポジトリ. 2024年10月14日閲覧。
  2. ^ 「JavaでXMLファイルを読み取る方法 - (JDOMパーサー)」Mkyong.com2009年12月21日。 2024年10月14日閲覧
  3. ^ 「artima - JDOMの設計レビュー」www.artima.com . 2024年10月14日閲覧
  4. ^ 「Java Community Process(SM)プログラム - JSR:Java仕様要求 - 詳細JSR# 102」。www.jcp.org2024年10月14日閲覧

公式サイトWikidataで編集する