[[SeasarWiki]] ''Doltengプラグイン機能覚え書き'' ***動作の前提条件 [#t07ede1f] -JRE 1.5以上を使用すること。 -KuinaDaoまたはUUjiにはDiiguプラグインが必要。(引数名の拡張のため) ***Chura対応プロジェクトの作成 [#obbc6f5c] -プロジェクト名、ルートパッケージ名を入力し、データアクセスフレームワークを選択すると、Chura対応プロジェクトが作成される。 -対応するデータアクセスフレームワークはKuinaDao,Uuji,S2Daoである。 -Teedaを使用するかどうか選択できる。(※バージョン0.13.0での追加機能) -Teedaを使用する場合は、Teeda Extensionの動作環境が生成される。 -データアクセスフレームワークの動作環境が生成される。 -jdbc.diconにhsqldbへの接続が初期設定される。 -Tomcatコンテキストが生成される。 -Sysdeo Tomcat Pluginの設定が登録される。 ***Pageクラスの生成 [#k176be70] -HTMLからid,class属性を解析してPageクラスを生成する。 -Dxoとの関連を認識する。 -表を認識し、そのDtoを生成する。 -Pageクラスのスーパークラスを生成する。(共通メンバの宣言などに使う) -表のDaoを認識したら、prerenderメソッドにその全件検索処理を実装する。 ***HTMLからPageクラスへのダイナミックプロパティの追加(※バージョン0.14.0での追加機能) [#hd2a2e1d] -id属性をもつタグのid以外の属性を選択してコンテキストメニューを開き、「Add Dynamic Property」を選択して開いたウィンドウに表示されたid以外の属性一覧から属性を指定すると、それがダイナミックプロパティとしてPageクラスに追加される。ダイナミックプロパティのデフォルト値はウィンドウで定義される。 ***DTOクラスの生成 [#x0f449ad] -Pageクラスを作成する時に、「Items」に後方一致するIDを持つタグがあれば、クラス名としてDTOを指定することが出来る。その際、セルの右側の「...」ボタンを押下すると、DTOを作成するウィザードが起動する。 ***Daoクラスの生成 [#b7cc6924] -DatabaseViewで、対象のテーブルもしくはカラムのノードを選択し、コンテキストメニューの「New Dao or Entity」を実行すると、Dao及びEntityを作成するウィザードが起動する。 -Uujiを選択している場合は、Daoのみ作成する。(EntityとしてMapを使用する為) -Uujiを選択している場合は、PageとActionを分割出来ない。Pageクラスがトランザクション境界となる。 ***Orm.xmlとDao、Entityクラスの自動遷移(KuinaDao) [#xecdda52] -Ctrl+3またはコンテキストメニューの「Open Dao Pair」でDao〜Orm.xmlを遷移する。 -Ctrl+4またはコンテキストメニューの「Open Entity Pair」でEntity〜Orm.xmlを遷移する。 -対応するOrm.xmlが存在しない場合、プロジェクトのPreferencesの「OrmXmlPath」で設定したパスにOrm.xmlの雛形を生成する。 ***SQLファイルとDaoクラスの自動遷移(UUji,S2Dao) [#i7b621c8] -Ctrl+3またはコンテキストメニューの「Open Dao Pair」でDao〜SQLファイルを遷移する。 -Uuji及びS2Daoでは、Daoクラスの対象のメソッド名の付近にカーソルを置くと、そのメソッドに対応するSQLファイルに遷移することができる。 -対応するSQLファイルが存在しない場合、SQLファイルを生成するウィザードが起動する。 ***HTMLからブラウザ起動 [#cebc95b4] -HTMLのコンテキストメニューで「View On Server」を選択すると、HTMLがローカルにデプロイされ、ブラウザが起動して表示される。 -デフォルトではキー割り当てなし(ショートカットキーを設定する事は出来る) ***HTMLファイルとPage、Actionクラスの相互遷移(UUji、S2Dao) [#vc0abd7b] -Ctrl+5でHTML〜Pageを遷移する。 -Ctrl+6でHTML〜Actionを遷移する。 -項目に対応関係がある場合、Pageクラスのエディタにマーカーを表示する。 -マーカーはプロジェクトの設定で「Use Page Marker」にチェックすれば表示される。 -マーカーはPageクラス、HTMLファイルの更新に同期する。 -マーカーを手動で更新するにはコンテキストメニューから「Refresh Marker」を選択する。 ***Scaffoldの生成 [#lff9e7ca] -DoltengのDatabaseViewのテーブルのコンテキストメニューから「Generate Scaffold Application」を選択すると、Scaffoldアプリケーションが自動生成される。 ***convention.diconへのMockクラスの一括登録(※バージョン0.15.0での追加機能) [#i6e6e79f] -本機能の目的:Mockクラスは立場的にネーミング規約外のクラス名で実装されるため自動認識の対象にならない。Mockを使ったテストを行うためにはインターフェースの実装クラスとして明示的にMockクラスを使うように指示するため、convention.diconの派生ファイルを作り、条件付include機能(env.txt)を用いてその派生環境を起動するようにすればよい。 -ソースフォルダのコンテキストメニューから「Dolteng」→「Register Mocks」を選択してウィザードを起動する。コピー作成するか追加するかを指定してconvention.diconのパスを指定し、ウィザード下部のグリッド内に表示されたMockクラス一覧(パッケージ名末尾が「mock」またはクラス名末尾が「Mock」であるクラスが対象)から任意のクラスをconvention.diconに追加またはコピー作成することができる。