濃縮還元オレンジニュース
Fluent Interfaceを取り入れた新「S2JDBC」
この記事を読むのに必要な時間:およそ 0.5 分
現在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の利用を検討してみてはいかがでしょうか。

