5.JAVAソース生成plugin
こんにちは、今回はEzServletのpluginの1つでものある「JAVAソース生成」pluginについて説明したいと思います。これでEzServletのpluginは最後です...やっとです><
セッティングsheet生成pluginで作成されたExcelシート(入力値妥当性チェックの設定等を行った)を元に、MVCモデルのFromクラスとActionクラスのjavaソースとpropertiesを自動生成します。
では早速利用方法について説明します。
今回利用するサンプルは前回説明したセッティングsheet()を利用します。
1.対象となるExcelを選択します。
2.すかさず「U」ボタンを押下します。
3.選択したパッケージに「SampleForm.java」「SampleAction.java」「SampleAction.properties」
が作成されます。
4.SampleForm.javaを開きます。
package jp.co.dsc.sample.list; import java.io.Serializable; import java.util.List; import java.util.ArrayList; import are.trygun.framework.util.message.EzMessage; import static are.trygun.framework.util.validate.EzValidateUtil.*; /** * <p>SampleForm画の入出力情報をマッピングするクラスです</p> * * @author xxxx * @version 1.00 2010/02/17 * @since 1.00 * */ public class SampleForm implements Serializable { /** serial version id */ private static final long serialVersionUID = 1L; /** PROPERTYファイルのパスを保持する属性です。*/ public static final String PROPERTY = SampleAction.class.getName(); /* TRYGEN_SOURCE_REPLACE_BEGIN */ /** 出力目「errors」の情報を保持する属性です。*/ public String[] errors; /** 入力目「氏名」の情報を保持する属性です。*/ public String name; /** 入力目「ユーザーID」の情報を保持する属性です。*/ public String userid; /** 入力目「メールアドレス」の情報を保持する属性です。*/ public String mail; /** 入力目「住所」の情報を保持する属性です。*/ public String address; /** 示・示フラグ「display」の情報を保持する属性です。*/ public boolean display = flase; /** 繰りし目のクラス「Result」を保持するList属性です。*/ public List<Result> resultList = new ArrayList<Result>(); /** * <p>Result画の入出力情報をマッピングするクラスです</p> */ public static class Result implements Serializable { /** serial version id */ private static final long serialVersionUID = 1L; /* TRYGEN_SOURCE_REPLACE_BEGIN */ /** 出力目「name」の情報を保持する属性です。*/ public String name; /** 出力目「userid」の情報を保持する属性です。*/ public String userid /** 出力目「mail」の情報を保持する属性です。*/ public String mail; /* TRYGEN_SOURCE_REPLACE_FINAL */ } /* TRYGEN_SOURCE_REPLACE_FINAL */ /** * <p>SampleForm画のプロパティーキーや定数の管理をう内クラスです</p> */ public static class VC implements Serializable { /** serial version id */ private static final long serialVersionUID = 1L; /* TRYGEN_SOURCE_REPLACE_BEGIN */ /** 入力目「氏名」の目名のプロパティーキーを保持する属性です。*/ public static final String NAME = "label.name"; /** 入力目「ユーザーID」の目名のプロパティーキーを保持する属性です。*/ public static final String USERID = "label.userid"; /** 入力目「メールアドレス」の目名のプロパティーキーを保持する属性です。*/ public static final String MAIL = "label.mail"; /** 入力目「住所」の目名のプロパティーキーを保持する属性です。*/ public static final String ADDRESS = "label.address"; /* TRYGEN_SOURCE_REPLACE_FINAL */ } /** * <p>画入力値の検をないます。</p> * @return boolean 検結果の成否 */ public boolean validate() { // チェック結果を保持する属性の宣と初期化をないます。 EzMessage ezMessage = new EzMessage(PROPERTY); // 「氏名」目に対して「全」チェックをないます。 character(ezMessage).name(VC.NAME).digit(20).emSize().validate(this.name); // 「ユーザーID」目に対して「数」チェックをないます。 character(ezMessage).name(VC.USERID).digit(20).alphabet().number().validate(this.userid); // 「メールアドレス」目に対して「半」チェックをないます。 character(ezMessage).name(VC.MAIL).digit(100).alphabet().number().sign().kana().validate(this.mail); // エラーメッセージをセットします。 this.errors = ezMessage.getMessage(); // 検結果の成否をします。 return ezMessage.isSuccess(); } }
5.SampleAction.javaを開きます。
package jp.co.dsc.sample.list; import are.trygun.framework.container.servlet.EzRequest; import are.trygun.framework.container.servlet.EzResponse; import are.trygun.framework.util.message.EzMessage; /** * <p>SampleFormの画制御(コントロール)をうクラスです</p> * * @author xxxxx * @version 1.00 2010/02/17 * @since 1.00 * */ public class SampleAction { /** * <p>SampleFormの初期示求があった場合に呼び出されるメソッドです。</p> * @param request リクエスト * @param response レスポンス * @param sampleForm */ public void index(EzRequest request, EzResponse response, SampleForm sampleForm) { // EzSessionに格納されているBeanを削します。 request.getSession().removePage(); // EzResponseに示するHTMLのBeanをセットします。 response.to(sampleForm); } /** * <p>「○○」ボタン押下時に呼び出されるメソッドです。</p> * @param request リクエスト * @param response レスポンス * @param sampleForm */ public void doSearch(EzRequest request, EzResponse response, SampleForm sampleForm) { // 画入力値をsampleFormにmappingします。 request.bind(sampleForm); // 入力値の検をないます。 response.continuation(sampleForm.validate()); // チェック結果を保持する属性の宣と初期化をないます。 EzMessage ezMessage = new EzMessage(SampleForm.PROPERTY); // ビジネスロジックを呼び出します(START) // ビジネスロジックを呼び出します(E N D) // EzResponseに示するHTMLのBeanをセットします。 response.to(sampleForm); } /** * <p>「○○」ボタン押下時に呼び出されるメソッドです。</p> * @param request リクエスト * @param response レスポンス * @param i 択されたボタンのResultクラスのインデックス * @param sampleForm */ public void doDetails(EzRequest request, EzResponse response, int i, SampleForm sampleForm) { // 画入力値をsampleFormにmappingします。 request.bind(sampleForm); // チェック結果を保持する属性の宣と初期化をないます。 EzMessage ezMessage = new EzMessage(SampleForm.PROPERTY); // ビジネスロジックを呼び出します(START) // ビジネスロジックを呼び出します(E N D) // EzResponseに示するHTMLのBeanをセットします。 response.to(sampleForm); } /* TRYGEN_SOURCE_REPLACE_BEGIN */ /* TRYGEN_SOURCE_REPLACE_FINAL */ }
6.SampleAction.propertiesを開きます。
# -------------------------------------------------- # 「SampleForm」Beanの定 # -------------------------------------------------- # ラベル「サンプル一照会」 label.title=サンプル一照会 # ラベル「氏名」 label.name=氏名 # ラベル「ユーザーID」 label.userid=ユーザーID # ラベル「メールアドレス」 label.mail=メールアドレス # ラベル「住所」 label.address=住所 # ラベル「検索」 label.search=検索 # ラベル「細」 label.details=詳細
各リソースの詳細説明は次回に…(^^;)