概要

S2Dao用のソースコードを自動生成します。

使用方法

Excelでテーブル定義を記述する

テーブル定義の記述には、以下の二通りが使えます。

diconファイルを設定する

dicon/org/seasar/codegen/impl/LoadFile.diconを、入力ファイルの形式およびRDBにあわせて修正します。

入力ファイルの形式

RDBの形式

テーブル名・カラム名とクラス名・プロパティ名の変換の設定(0.1.0 beta-2からの機能です。)

種別変換前変換後(NullConverterImpl)変換後(CamelConverterImpl)
DaoEMPLOYEE_TABLEEMPLOYEE_TABLEDaoEmployeeTableDao
DtoEMPLOYEE_TABLEEMPLOYEE_TABLEDtoEmployeeTableDto
getterEMPLOYEE_IDgetEMPLOYEE_IDgetEmployeeId
setterEMPLOYEE_IDsetEMPLOYEE_IDsetEmployeeId

antのビルドファイルを設定する

注意:build.xmlは、配布パッケージ作成のためのファイルです。コード生成のためのファイルの雛形はbuild_sample***.xmlです。

build_sample.xmlを参考にビルドファイルを記述します。 通常は、build_sample.xml内の2つのプロパティを修正すればすむはずです。

<!-- テープル定義ファイルのパス -->
<property name="codegen.table" value="test/codegen.csv"/>
<!-- 出力ファイルのパッケージ名 -->
<property name="codegen.package" value="org.seasar.codegen.sample"/>

antタスクを実行する。

ファイル名がbuild_sample.xmlの場合、

ant -f build_sample.xml

でソースが生成されます。

注意点

開発情報

TODO

  1. 対応DBを増やす
  2. 入力フォーマットにExcelを追加する
  3. S2DaoのサンプルDBを元にサンプルを作る
  4. Diconの数を減らす
  5. テーブル名+カラム名を大文字+「_」で記述したときにJavaの標準的なクラス名・フィールド名になるようにする。
  6. IDのような大文字だけの定義があった場合、フィールド名をIDとなるようにする。(現状、iDとなる)
  7. S2Daoの1:Nマッピングに対応する
  8. DDL出力
  9. UnlessUpdateに対応する
  10. ソース生成後、antタスク内でコンパイルするようにする..?
  11. Daoのクラス名は定義書等で指定できるようにする。
  12. pagerに対応する。
  13. 実テーブルからリバース
  14. 検索条件の or 、group by 対応
  15. Maven2対応
  16. S2Dao Tiger対応
  17. DTOのJavaDocコメントを生成する。
  18. DTOのequalsメソッドの生成
  19. Eclipseプラグイン化

参考資料

DB対応作業分担表

DB担当
DB2対応済み
MaxDB対応済み
Derby対応済み
Oraclemakotan
SQLServer
MySQLazusa
PostgreSQLmakotan
HSQLDBazusa
Firebird
H2

メーリングリスト

Seasar-devメーリングリストで開発に関する議論を行なっています。

SVNレポジトリ

https://www.seasar.org/svn/sandbox/s2dao-codegen/

ダウンロード

http://s2dao-codegen.sandbox.seasar.org/download/

http://s2dao-codegen.sandbox.seasar.org/snapshot/ からレポジトリのsnapshotをダウンロードできます。

コメント

ジェネレータに、組み込んで欲しい機能の要望があれば、気軽にコメントをどうぞ!

最新の10件を表示しています。 コメントページを参照

  • S2Dao-CodeGen 興味があるので参加してもいいですか? -- GLAD!! 2006-08-15 (火) 01:05:12
    • もちろんokかと -- kusumoto 2006-08-15 (火) 08:53:35
    • コメントありがとうございます。参加されたいのは開発とミーティングのどちらでしょう?それとも両方? -- せとあずさ 2006-08-15 (火) 21:01:31
    • 両方でお願いします。 -- GLAD!! 2006-08-16 (水) 01:29:02
  • はじめまして。要望があります。Excelからの入力形式を柔軟にしていただきたいです。例えば、設定ファイルを変えれば、CSEの出力定義にも対応するとか。そうすれば、間接的にリバース可能になります。あと、Javadoc生成も考慮していただきたいです。よろしくご検討ください。 -- wat 2007-05-05 (土) 15:39:13
  • Excelからの入力形式については今後の課題ですが、リバースについては開発版では直接リバース可能になっています。なるべく早くリリースできるようにしたいので、よろしくお願いします。 -- せとあずさ 2007-05-09 (水) 12:03:00
お名前:

トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS