S2Dao用のソースコードを自動生成します。
使用方法†
S2Dao-CodeGen/0.1.x
S2Dao-CodeGen/0.2.x
注意点†
開発情報†
TODO†
- S2DaoのサンプルDBに対してソース生成した時のテストケースを書く
- 対応DBを増やす
- pagerに対応する。
UnlessUpdateに対応する→無理
- DDL出力
入力フォーマットにExcelを追加する
S2DaoのサンプルDBを元にサンプルを作る
テーブル名+カラム名を大文字+「_」で記述したときにJavaの標準的なクラス名・フィールド名になるようにする。
- IDのような大文字だけの定義があった場合、フィールド名をIDとなるようにする。(現状、iDとなる)
Daoのメソッド・シグネチャーにGenericsを使用可能にする
実テーブルからリバース(→マッピング情報をどこから取得するかが課題)
- S2Dao Tiger対応
- DTOのJavaDocコメントを生成する。
検討課題†
- S2Daoの「更新されたプロパティのみをUPDATE文に含める」機能を、DTOを直接newした場合にも使用可能にする。
FindDtoを<ルートパッケージ>.dtoパッケージに出力可能にする。→不要
- Daoの生成にgenaration gapパターンの使用を可能にする。
- Daoのクラス名は定義書等で指定できるようにする。
- シーケンス名を定義書等で指定できるようにする。
- ソース生成後、antタスク内でコンパイルするようにする
- 検索条件の or 、group by 対応
- Maven2対応
- S2Daoの1:Nマッピングに対応する
- DTOのequalsメソッドの生成
- Doltengと連携..?
参考資料†
DB対応作業分担表†
DB | 担当 |
DB2 | 対応済み |
MaxDB | 対応済み |
Derby | 対応済み |
Oracle | makotan |
SQLServer | azusa |
MySQL | azusa |
PostgreSQL | makotan |
HSQLDB | azusa |
Firebird | |
H2 | azusa |
メーリングリスト†
Seasar-devメーリングリストで開発に関する議論を行なっています。
SVNレポジトリ†
https://www.seasar.org/svn/sandbox/s2dao-codegen/
ダウンロード†
http://s2dao-codegen.sandbox.seasar.org/download/?C=M;O=D
http://s2dao-codegen.sandbox.seasar.org/snapshot/
からレポジトリのsnapshotをダウンロードできます。
CompareDBFluteWithCodeGenに一覧表があります。
コメント†
ジェネレータに、組み込んで欲しい機能の要望があれば、気軽にコメントをどうぞ!