自作フレームワークの構想その1

物件によってはライセンスやサポートの都合もあり、オープンソースフレームワークを利用できないケースがあるので、リフレクション・ダイナミックプロキシの習熟がてら自作してみる。

当初のフレームワーク構想は以下のあたりかな。まー想定はSeasarやらRoRやらということで。

データベース・Entity間の自動化、コネクションまわりの隠蔽は恩恵が大きいので、ここは外せないところ。んで、こいつがBeanUtilsあたりに依存することになるので、BeanUtilsの代替も必要。

ライセンスは上記の都合で公開できないのが残念だけど、過去版とかブランチ的に公開とかしたいところ。FLOSSなひとだしね、自分。

AssertUtilsの構想その1

こいつは単純にJUnitのAssert同等。
ただしフレームワーク内で使いやすいように、例外をリフレクションを使って生成とする。

いまのPCサーバ/クライアントクラスなら、リフレクションによる負荷がクリティカルに効いてくることも少ないようなので、できるかぎりお大尽にリフレクションを多用してみる。
リフレクションの習熟も目的の一つだしね。

BeanUtilsの構想その1

こいつも基本はCommonsのBeanUtils同等。
ただ、JDK5.0以降対象なので、総称型やら正規表現やらはバリバリ使うこととする。

といっても、まずはField操作のみしかサポートしない。Daoから使うのもFieldのみとして楽するつもりだし。

AssertUtilsをとりあえず実装してみた

とりあえず、だだっと作ってみた。

使う側からは、

Assert.assertNull(IllegalArgumentException.class, "No bean specified", bean);

こんな感じで使えるから楽チン。
とりあえずRuntimeExceptionだけをサポートとする。ビジネスロジック,フレームワークから意識的に生成したい例外って、大半がRuntimeException系だしね。

BeanUtilsをとりあえず実装してみた

とりあえず、基本形の配列でもMapでもない、普通のBeanを想定したものを作ってみた。
使い勝手もCommonsのBeanUtilsと変わらないから、なかなかいい感じ。

もっとも、Fieldしか操作できないけどね。フフフ。