説明
概要
サービスクラスを生成します。 サービスクラスとは、エンティティを利用するビジネスロジックを持つクラスで、エンティティクラスにつき1つ生成されます。 生成されるサービスクラスは次のようなコードになります。 これはエンティティクラスAddressに対するサービスクラスです。
/** * {@link Address}のサービスクラスです。 * * @author S2JDBC-Gen */ public class AddressService extends AbstractService<Address> { /** * 識別子でエンティティを検索します。 * * @param id * 識別子 * @return エンティティ */ public Address findById(Integer id) { return select().id(id).getSingleResult(); } /** * 識別子の昇順ですべてのエンティティを検索します。 * * @return エンティティのリスト */ public List<Address> findAllOrderById() { return select().orderBy(asc(id())).getResultList(); } }
生成後は、任意のメソッドを追加し自由に利用できます。
パラメータ
トップレベルのパラメータ
属性 | 説明 | デフォルト値 | 必須 |
---|---|---|---|
classpathDir | エンティティクラスを含むクラスパスのディレクトリです。このディレクトリはタスクの実行時のクラスパスに含まれている必要があります。 | - | YES |
rootPackageName | ルートパッケージ名です。 | "" | NO |
entityPackageName | エンティティクラスのパッケージ名です。エンティティクラスは、rootPackageNameとこの値をピリオドで連結したパッケージに配置されているとみなされます。 | "entity" | NO |
entityClassNamePattern | このタスクで対象とするエンティティクラス名の正規表現です。 | ".*" | NO |
ignoreEntityClassNamePattern | このタスクで対象としないエンティティクラス名の正規表現です。 | "" | NO |
servicePackageName | サービスクラスのパッケージ名です。サービスクラスは、rootPackageNameとこの値をピリオドで連結したパッケージに配置されます。 | "service" | NO |
serviceClassNameSuffix | サービスクラス名のサフィックスです。 | "Service" | NO |
abstractServiceTemplateFileName | 抽象サービスクラスのテンプレートファイル名です。 | "java/abstract-service.ftl" | NO |
serviceTemplateFileName | サービスクラスのテンプレートファイル名です。 | "java/service.ftl" | NO |
useNames | "true"の場合、名前クラスを使用します。 | "true" | NO |
namesClassNameSuffix | 名前クラス名のサフィックスです。 | "Names" | NO |
namesPackageName | 名前クラスのパッケージ名です。名前インタフェースは、rootPackageNameとこの値をピリオドで連結したパッケージに配置されているとみなされます。 | "entity" | NO |
templateFileEncoding | テンプレートファイルのエンコーディングです。 | "UTF-8" | NO |
templateFilePrimaryDir | テンプレートファイルを検索する際の優先ディレクトリです。 | - | NO |
javaFileDestDir | Javaファイルの出力先ディレクトリです。 | "src/main/java" | NO |
javaFileEncoding | Javaファイルのエンコーディングです。 | "UTF-8" | NO |
overwrite | "true"の場合、サービスクラスのJavaファイルを上書きします。 | "false" | NO |
overwriteAbstractService | "true"の場合、抽象サービスクラスのJavaファイルを上書きします。 | "false" | NO |
configPath | JdbcManagerのコンポーネント定義を含む設定ファイルです。 | "s2jdbc.dicon" | NO |
env | 環境名です。 | "ut" | NO |
jdbcManagerName | JdbcManagerのコンポーネント名です。接続先のデータベースはJdbcManagerのコンポーネント名によって決まります。 | "jdbcManager" | NO |
factoryClassName | S2JDBC-Genの公開されたインタフェースの実装を作成するファクトリのクラス名です。S2JDBC-Genをカスタマイズする場合に独自のファクトリクラスを指定できます。ここに指定するクラスはorg.seasar.extension.jdbc.gen.internal.factory.Factoryインタフェースを実装している必要があります。 | "org.seasar.extension.jdbc.gen .internal.factory.FactoryImpl" |
NO |
commandInvokerClassName | S2JDBC-Genのコマンドを呼び出すクラスの名前です。コマンドの呼び出し前後で任意の処理を実行したい場合に指定します。ここに指定するクラスはorg.seasar.extension.jdbc.gen.command.CommandInvokerインタフェースを実装している必要があります。 | "org.seasar.extension.jdbc.gen .internal.command.CommandInvokerImpl" |
NO |
classpath | このタスクを実行する際のクラスパスです。 | - | classpathrefが指定されていない場合YES |
classpathref | このタスクを実行する際のクラスパスの参照です。 | - | classpathが指定されていない場合YES |