Doma 1.17.0 リリース
Java6(JDBC4.0)対応のDaoフレームワーク Doma 1.17.0 をリリースしました。
ダウンロードはこちらからできます。
Mavenをご利用の方はこちらを参照ください。
以前のバージョンから移行するには移行ガイドを参照ください。
リリースノート
1.16.0からの変更点は以下のとおりです。
Bug
Mapの利用について
S2DaoやS2JDBCにあってDomaにない機能のひとつにMapへの対応があったわけですが、今回のリリースで対応しました。
たとえば、検索結果をMapで取得したい場合はこんな感じで書けます。上から順に、1件検索、複数件検索、イテレーション検索の例です。
@Dao(config = AppConfig.class) public interface EmployeeDao { @Select Map<String, Object> selectById(Integer employeeId); @Select List<Map<String, Object>> selectAll(); @Select(iterate = true) <R> R selectAll(IterationCallback<R, Map<String, Object>> callback); }
Mapのキーとなるカラム名をアンダースコア区切りからキャメルケースに変換したいとか、小文字に変換したいとかといった場合は、@SelectのmapKeyNaming要素に値を指定します。
@Select(mapKeyNaming = MapKeyNamingType.CAMEL_CASE)
Map<String, Object> selectById(Integer employeeId);
MapKeyNamingTypeに他にどんな値があるかはJavadocみてください。mapKeyNamingに明示的に指定しない場合は何も変換しません。