現在RCとしてリリースしているSeasar 2.4.18から、Seasar2に含まれるデータアクセス機能のS2JDBCが新しくなりました。
新S2JDBCは、JPA(Java Persistence API)の仕様を取り入れつつ、より使いやすくなるよう拡張しています。S2JDBCの機能を試すチュートリアル用のEclipseプロジェクトも用意されていますので、すぐに動かすことができます。
コード例として、Employeeエンティティをid順に1~10件目まで取得したい場合、次のようになります。
List<Employee> results =
jdbcManager
.from(Employee.class)
.orderBy("id")
.limit(10)
.offset(0)
.getResultList();
SQLを書くような感覚でメソッドをつなげて記述しています。このような記法でメソッドが書けることをMartin Fowler氏はFluent Interfaceと名づけています(日本語では「流れるようなインタフェース」「流暢なインタフェース」などと訳されています)。One-To-Manyなどの関連はもちろん、複雑なデータ処理を行うためにSQLを書くこともできます。
これまではS2DaoがSeasarのメインO/Rマッパでしたが、これから新規プロジェクトを始める方は新S2JDBCの利用を検討してみてはいかがでしょうか。
URL:http://s2container.seasar.org/2.4/ja/s2jdbc.html