Skip to content

大量のXML出力

大量のXML出力 published on 大量のXML出力 へのコメントはまだありません

自分用メモ
JavaでXMLを使う時にdom4jが便利というエントリを以前書いた
dom4jを使ってXMLを出力する場合、基本的にはXMLツリーを作ってからそれを出力するけど、大量のXMLデータを出力したい時にはXMLツリーを作ってるとメモリが足りなくて…という事になるので、逐次データを出力していく方法を使う。
dom4jの場合、XMLWriterクラスのstartElementメソッドとendElementメソッドを使って要素を書き出していく。
一番最初と最後にstartDocument()とendDocument()を入れるのを忘れないようにする。あと、setWriter(Writer writer)で書き込み先を指定する。writer.close()を忘れないようにする。
dom4jは使ってないけど、IBMのこの記事も参考になった。
(TODO コード例を後で書き足す。)

dom4j

dom4j published on dom4j へのコメントはまだありません

仕事ではJavaを使ってる。設定ファイルや他のシステムとのやりとりにはXMLを使う事が多いので、最近はようやくXMLの扱い方に慣れてきた。

JavaでXMLを扱うにはdom4jが便利。XMLが何かってのを何となく知ってる人ならQuick startを読めば大体理解出来ると思う。(日本語ドキュメントはなさそうなので暇な時に訳して公開の許可をお願いしてみようかな。)

org.w3c.domのあまりの面倒くささに、「XMLなんてイヤだ!」とか思った人(自分)はdom4jでXPathを使ってデータを取り出す事を知って感動するのではないかと。

例えば以下のようなXMLドキュメントがあった場合、

<foo>
<bar>
<author name="Kazuo Kashima" />
</bar>
</foo>

以下のように値を取り出せる。

Node node = document.selectSingleNode( "//foo/bar/author" );
String name = node.valueOf( "@name" );

XPathに関しては、googleで検索すると小難しい説明のページやW3Cのドキュメントの翻訳が沢山出てくるけど、上位20件位を見た中ではこのページが分かりやすかった。

XML+XSL

XML+XSL published on XML+XSL へのコメントはまだありません

こないだ初めてXMLをXSLを使ってHTMLに変換する、というのをやってみた(XSL Transformations = XSLT)。結構面白い。

○概要
あるデータをXMLフォーマットで保存。それをWeb上に表示したい。その時にXMLをある一定の規則に従ってHTMLに変換するんだけど、その規則を定義するのがXSL(XML Stylesheet Language)。

XSLは何もXMLをHTMLに変換する時に用いられるだけではなく、XMLから他のフォーマットに変換する規則を記述する為の言語。XSL自体もXMLフォーマット。

Continue reading XML+XSL

嫌いなプログラミングスタイル

嫌いなプログラミングスタイル published on 嫌いなプログラミングスタイル への2件のコメント

あまり好き嫌いはない方なのだけど、これはイヤ。

if ( cond )
foo();

1文だけだからって括弧を使わない人。あとから処理を追加する時に括弧を付け忘れると、、、

if ( cond )
foo();
bar();

bar()が常に実行されてしまう!
いやー、付け忘れるのが悪いって意見もあると思うけど、なるべくミスや誤解を少なくさせる書き方をするべきだと思う。

JavaScriptのデバッグ

JavaScriptのデバッグ published on JavaScriptのデバッグ へのコメントはまだありません

結構alert文だけで頑張っている人もいるのではないかと思う。自分もその一人だけど。
今のプロジェクトではJavaScriptを使いまくりなので、MicrosoftのScriptDebuggerをダウンロードして使う事になった。普通のデバッガになれていると機能の貧弱さにちょっと泣けてくるけど、それでもalert文だけより大分マシ。
○使い方
使い方は、IEで普通にページを開いてスクリプトエラーがあるとウィンドが出てきてデバッグするか聞いてくる。「はい」を答えるとScriptDebuggerが立ち上がる。で、後は「コマンドウィンドウ」で変数名とかを入力するとその値が表示されたり「undefined」などと表示される。
立ち上がらない場合はIEの「ツール」→「インターネットオプション」→「詳細設定」タブ→「スクリプトのデバッグを使用しない」のチェックを外す
動作はあまり安定していないような気がするので、IEの強制終了などはしょっちゅう必要になる事を覚悟しておく。
○インストールなど
ダウンロードはこの辺りから。MSのサイトはURLがよく変わるので、リンク切れの場合は自分で検索して探してください。
自分は英語版をインストールして使った(英語版OSなので)。Windows Genuine Programをパスしないとダウンロード出来ない。

JSP/Servletディレクトリ構造

JSP/Servletディレクトリ構造 published on JSP/Servletディレクトリ構造 へのコメントはまだありません

久しぶりにJavaをやってる。自分用メモ。
■環境構築
○server.xmlの設定
コンテキスト(Context)の追加
Tomcat 4系と5系で設定方法が違うらしい
○ディレクトリ構成
本家のページ
「Javaへの道」というサイトのページ
○web.xmlの設定
サーブレットを使えるようにする
JavaでHello Worldと言うサイトのページ
○build.xml
■プログラム
JSPでJavaBeansを使う(@IT)。

Continue reading JSP/Servletディレクトリ構造

HTML特殊文字変換ツール

HTML特殊文字変換ツール published on HTML特殊文字変換ツール へのコメントはまだありません

blogに何か書く時(blogに限らずHTMLの場合)、HTMLタグやXMLタグなどを記述したい時がある。技術系の文書だと特に。そういう時にそのまま記述するとHTMLタグと認識されてしまい正しく表示されない。
> → &gt;
とか変換する必要があるんだけど、手動でやると面倒。検索したらWeb上で出来るページを発見。
HTML特殊文字変換ツール
それ以外にもツールとかあるけど、たったこれだけのためにソフトをダウンロードして解凍してダブルクリックしてって面倒くさい。