DBFlute Maven Plugin の基本的な利用方法について説明します。
DBFlute Maven Plugin を利用するためには、Maven のインストールおよびMaven のプロジェクトを生成しておく必要があります。 Maven プロジェクトの生成には、Maven の archetype 機構を利用すると簡単に生成することができます。 たとえば、Maven のインストール後に、以下のように実行すると Maven プロジェクトが作成されます。
mvn archetype:generate \
    -DgroupId=グループID \
    -DartifactId=プロジェクトID \
    -DarchetypeArtifactId=maven-archetype-webappgroupId には生成するプロジェクトのグループ ID、artifactId には生成するプロジェクトのプロジェクト ID、archetypeArtifactId には生成するプロジェクトのタイプをしていします。 archetypeArtifactId には以下のものなどを指定できます。 詳細については、Maven Archetype Plugin を参照してください。
DBFlute Maven Plugin を利用するために、開発するプロジェクトの pom.xml にプラグイン情報を追加します。 以下のように追加してください。 バージョン (version要素) は最新のバージョンを利用してください。
<?xml version="1.0" encoding="UTF-8"?>
<project>
...
  <build>
    <plugins>
...
      <plugin>
        <groupId>org.seasar.dbflute</groupId>
        <artifactId>dbflute-maven-plugin</artifactId>
        <!-- DBFlute Maven Plugin のバージョン -->
        <version>1.0.0</version>
        <configuration>
          <dbfluteVersion>1.0.0</dbfluteVersion>
          <dbPackage>sample.app.db</dbPackage>
          <clientProject>sample</clientProject>
        </configuration>
      </plugin>
...
    </plugins>
  </build>
...
</project>configuration 要素以下で DBFlute Maven Plugin のパラメータを設定することができます。 dbfluteVersion はプロジェクトにインストールする DBFlute のバージョン、dbPackage は DBFlute により生成されるクラスをインストールするパッケージ名、clientProject はプロジェクト名で DBFlute クライアント内の build-プロジェクト名.properties などで利用されます。
デフォルトでは H2 のデータベースが設定されますが、Oracle など別な DB を設定するなどカスタマイズしたい場合は、configuration 要素以下に以下のように指定します。 この設定は、DBFlute クライアントだけに適用されるものなので、アプリが使う jdbc.dicon などのその他の設定は別途行ってください。
...
        <configuration>
...
          <database>mysql</database>
          <databaseDriver>com.mysql.jdbc.Driver</databaseDriver>
          <databaseUrl>jdbc:mysql://localhost/DB名?useUnicode=true&amp;characterEncoding=UTF-8</databaseUrl>
          <databaseUser>ユーザ名</databaseUser>
          <databasePassword>パスワード</databasePassword>
        </configuration>
      </plugin>
...dbflute:download ゴールを実行すると、dbfluteVersion で指定されたバージョンの DBFlute を mydbflute ディレクトリ以下に展開します。
mvn dbflute:download
dbflute:create-client ゴールを実行すると、dbfluteVersion で指定されたバージョンの DBFlute の DBFlute クライアントを展開します。 展開時に database などのパラメータが pom.xml などで設定されている場合は、それらの値が適用されます。 このゴールを実行する前に、dbflute:download ゴールを実行しておく必要があります。
mvn dbflute:create-client
dbflute:replace-schema ゴールを実行すると、DBFlute クライアントの replace-schema.[sh|bat] が実行されます。 replace-schema については、DBFlute のサイトを参照してください。
mvn dbflute:replace-schema
dbflute:jdbc ゴールを実行すると、DBFlute クライアントの jdbc.[sh|bat] が実行されます。 jdbc については、DBFlute のサイトを参照してください。
mvn dbflute:jdbc
dbflute:doc ゴールを実行すると、DBFlute クライアントの doc.[sh|bat] が実行されます。 doc については、DBFlute のサイトを参照してください。
mvn dbflute:doc
dbflute:generate ゴールを実行すると、DBFlute クライアントの generate.[sh|bat] が実行されます。 generate については、DBFlute のサイトを参照してください。
mvn dbflute:generate
dbflute:sql2entity ゴールを実行すると、DBFlute クライアントの sql2entity.[sh|bat] が実行されます。 sql2entity については、DBFlute のサイトを参照してください。
mvn dbflute:sql2entity
dbflute:outside-sql-test ゴールを実行すると、DBFlute クライアントの outside-sql-test.[sh|bat] が実行されます。 outside-sql-test については、DBFlute のサイトを参照してください。
mvn dbflute:generate
dbflute:manage ゴールを実行すると、DBFlute クライアントの manage.[sh|bat] が実行されます。 manage については、DBFlute のサイトを参照してください。
mvn dbflute:manage ...
dbflute:upgrade ゴールを実行すると、利用している DBFlute を dbfluteVersion で指定されたバージョンにアップグレードします。 アップグレードは、DBFlute をダウンロード・展開し、DBFlute クライアントの _project.[sh|bat] を更新します。 このゴールを実行する前に、dbflute:download ゴールを実行しておく必要があります。
mvn dbflute:upgrade