java

junitで例外のテストをもっと簡単にしたい

最近のJunitでは例外のチェックが前よりは簡単になったけど、JDaveの匿名クラスを使った記述方法と比べていまいちだなと感じていた。 例外のチェック方法の比較 JUnit4での例その1:@Testのexceptionを使う場合。 「JUnit Cookbook」より @Test(expected= Ind…

mavenのレポートプラグインてんこ盛り設定

mavenレポートプラグインをてんこ盛りにしたpom.xmlの設定例です。以下のレポートプラグインを使います。 org.apache.mavenのプラグイン maven-site-plugin プロジェクトのサイトを作成する maven-jxr-plugin クロスリファレンスを作成する maven-surefire-r…

NetBeansでlombokを使う

「Java の冗長性を排除する手軽な方法」で紹介されていたlombokというライブラリが便利そうだったので、NetBeansで試してみた。 一言で言うと、lombokはJavaBeanのsetterやgetterを省略可能にして記述量を減らしてくれるライブラリ。JavaBeansのメソッドはID…

jarを一本化するonejar-maven-pluginを使ってみた

「javaプロジェクトを簡単に単一jarファイルで配布する - lime55の日記」から 「One-JARでアプリケーションの配布を単純化」経由で 「Google Code Archive - Long-term storage for Google Code Project Hosting.」を見つけたので試してみる。One-Jarの仕組…

slim3-archetype-quickstartを使ってNetBeans用のslim3Mavenプロジェクトを作ってみた

slim3-archetype-quickstartと、maven-gae-pluginを使ってNetBeansでslim3のMavenプロジェクトを構築してみました。 この手順でできるのは、アーキタイプで作成されたプロジェクトをローカルで動かして動作確認するところまでです。デプロイはまた後日。2010…

mime-utilのサンプルをもう1つ作ってみた。

種類を判定したいファイルをドロップすると、mime-utilを使って種類を判定し、MimeTypeを出力する。 mime-util-swixml2-sampleプロジェクト 実行用ファイル GUIの構築に使っているのはswixml2というフレームワークで、XMLで宣言的にswingのGUIを作成できる。…

普段使ってるeclipseプラグイン

普段使ってるeclipseプラグインを書き出してみる。 使っているeclipseのバージョンはPleiades All in Oneのjavaパッケージ(Pleiades All in One Java), pleiades-e3.5-java_20100226.zipです。これが出来たおかげで、ずいぶん楽になりました。プラグインを入…

コンストラクタとstaticメソッド

まずはEffective Javaでおなじみ、「http://d.hatena.ne.jp/makiyamakoji/20090326/p1」で紹介されているstaticファクトリメソッドという方法。 public class Hoge { private Hoge() { ... } // static ファクトリーメソッド public static Hoge newInstance…

ポリモーフィズムを使ったリファクタリングの実践例

ポリモーフィズムを使ってないひどいコード設計を見たので、どうリファクタリングするべきだったのかを書いておく。 やばい匂いのするコード そのシステムでは、複数の銀行とのやりとりを行うため、銀行コードに基づいて処理を分岐していた。そうこんな風に …

javaでファイルのドロップを受け付ける部品を作ってみた

参考にしたのは以下のサイト http://terai.xrea.jp/Swing/FileListFlavor.html 「Java SE 6完全攻略」第29回 Swingでのドラッグ&ドロップ その1 | 日経 xTECH(クロステック) SwingコンポーネントへWindows ExplorerからファイルをDrag & Drop - torutkの…

XMLのDOMをJTree用のTreeNodeに変換するアダプタ

この記事を参考にして、J2SE6でXMLのDOMをJTreeに表示するためのTreeNodeに変換するアダプタを作ってみた。いまさらながら、TreeModelのアダプタにした方が楽だったのではと思ってたりするけど、気にしない。 あと、デザインパターンを必要以上に使っている…

BeansBinding1.2.1でButtonGroupを扱う(読み出しのみ)

BeansBinding1.2.1でバインディングを使ってButtonGroupから選択されているボタンの読み出しに成功したので、記録しておく。 前回の失敗はこれ BeansBindingの拡張機能 BeansBindingには、一般的なJavaBeansの規格に沿わないクラスに対してバインディングを…

BeansBinding1.2.1ではまだButtonGroupに対応してないらしい。

BeansBindingは、Beanのフィールドの値を同期するための仕組み。わりとswing用に使われることが多いみたいだけど、他の使い方もあるのかもしれない。で、次のようなGUIで選んだラジオボタンの値をBeansBindingでテキストフィールドに表示しようとしたが、値…