かとじゅんの技術日誌

技術の話をするところ

JavaでSeasar2を使った開発

ここ数年 JavaSeasar2を使った開発をやってきてそれなりにナレッジがたまってきました。

フレームのお決まりは、

です。

今までは、上の3つしか使っていませんでしたが、コーディング量を減らして楽している感覚はあまりなかったのですが、DBFluteS2Buriの導入で変わってきたように思います。
DBFluteは、S2Daoを拡張したようなフレームワークスキーマからDaoやEntityなどの自動生成はもとより、BhvやConditionBeanによる非常に便利な機能があります。S2Buriはワークフローステートエンジン、エンティティにあるなんとかフラグとか、そういうエンティティの状態フラグは、Buriにお任せしちゃいましょう。あとはワークローを絵で描いてやれば、ほらif文とさよならできますね。少々複雑なこともDBFluteのConditionBeanでBuriのテーブルとJOINすれば済みますし、別途専用のVIEWを作るのもよいでしょう。
あとはかゆいところに手が届かないのが、メール送信系とバッチ系の処理。ここは、S2MaiS2Chronosを使います。
S2Maiは実装レスでテンプレート対応のメールを送信できるフレームワークで、S2ChronosもPOJOベースのシンプルなオブジェクトスケジューラ(ちなみに私ひとりで作っています...)、バッチ系で別プログラムって、面倒です。ウェブアプリの中に集約したほうが生産性はあがります。

ということで、この構成でビジネスロジックだけに集中した開発がやっとできるようになったと思います。