濃縮還元オレンジニュース

Fluent Interfaceを取り入れた「S2JDBC」

現在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の利用を検討してみてはいかがでしょうか。

URLhttp://s2container.seasar.org/2.4/ja/s2jdbc.html

おすすめ記事

記事・ニュース一覧