クラス WriteTableParamTag

  • すべての実装されたインタフェース:
    Serializable, javax.servlet.jsp.tagext.BodyTag, javax.servlet.jsp.tagext.IterationTag, javax.servlet.jsp.tagext.JspTag, javax.servlet.jsp.tagext.Tag, javax.servlet.jsp.tagext.TryCatchFinally

    public class WriteTableParamTag
    extends CommonTagSupport
    WriteTableTag にパラメーターを渡す為のタグクラスです。 writeTable タグに対して、EXEC_SQL 情報や、tableName情報を付加することができます。 WriteTable の、writerClass によって、使用できるキーが異なります。 writerClass="XML"   TableName :XML 形式の ROWSET の table 属性になります。   First :最初に記載して、初期処理(データクリア等)を実行させる、EXEC_SQL 情報になります。   Last :最後に記載して、項目の設定(整合性登録)を行う、EXEC_SQL 情報になります。   MergeSql :このSQL文で UPDATEして、結果が0件ならINSERTを行う、MERGE_SQL 情報になります。 writerClass="JSON"   JsonName :JSON形式で、配列をオブジェクトとしてまとめる場合に使います。   LowerCase :カラム名(=パラメータ名)を小文字にする場合、true をセットします(初期値:false)。 writerClass="CalcDef"   Size :レコードのデータ件数(初期値:25) 値は、value 属性で指定するか、なければ BODY 部に記述します。 tableName情報は、XMLファイルのROWSET属性にセットすることで、XMLファイルの登録テーブル名を 指定することができます。 EXEC_SQL 情報とは、タブ区切りファイルやXML形式ファイルの先頭(key="First") または、最後(key="Last")に、SQL文を記述することで、ファイル取り込み時の 前処理、後処理を処理する為の情報です。 key="MergeSql" で、MERGE_SQL 情報をセットできます。MERGE_SQL を登録すると、 そのSQL文で、UPDATEして、結果が0件ならINSERTを行います。 この情報は、複数件登録できるため、通常の writeTable タグに属性を追加すると、 複雑になるため、複数登録できる用に、内部にタグを持てる構造にします。
    関連項目:
    直列化された形式
    変更履歴:
    4.0.0.0 (2005/01/31) 新規作成, 5.6.6.1 (2013/07/12) MERGE_SQL 対応
    機能分類
    ファイル出力
    形式サンプル:
    ●形式: <og:writeTableParam key="[First|Last|TableName]" > delete from GE12 where SYSTEM_ID='**' and KBSAKU='0' </og:writeTableParam ●body:あり(EVAL_BODY_BUFFERED:BODYを評価し、{@XXXX} を解析します) ●Tag定義: <og:writeTableParam key ○【TAG】パラメータとして渡すキー情報([First|Last|MergeSql|TableName|Size|JsonName|LowerCase])を指定しま(必須)。 value 【TAG】パラメータとして渡す設定値を指定します(初期値:null) caseKey 【TAG】このタグ自体を利用するかどうかの条件キーを指定します(初期値:null) caseVal 【TAG】このタグ自体を利用するかどうかの条件値を指定します(初期値:null) caseNN 【TAG】指定の値が、null/ゼロ文字列 でない場合(Not Null=NN)は、このタグは使用されます(初期値:判定しない) caseNull 【TAG】指定の値が、null/ゼロ文字列 の場合は、このタグは使用されます(初期値:判定しない) caseIf 【TAG】指定の値が、true/TRUE文字列の場合は、このタグは使用されます(初期値:判定しない) debug 【TAG】デバッグ情報を出力するかどうか[true/false]を指定します(初期値:false) > ... Body ... </og:writeTableParam> ●使用例 <og:writeTable ・・・・・ > <og:writeTableParam key = "Tablename" value="GE12" /> <og:writeTableParam key = "First" First:最初に登録 > insert into GE12bk select * from GE12 where SYSTEM_ID='**' </og:writeTableParam <og:writeTableParam key = "First" First:の2番目に登録 > delete from GE12 where SYSTEM_ID='**' and KBSAKU='0' </og:writeTableParam <og:writeTableParam key = "Last" Last:最後に登録 > update GE12 set XXXX='YYYY' where SYSTEM_ID='**' and KBSAKU='0' </og:writeTableParam </og:writeTableParam
    バージョン
    4.0
    作成者
    Kazuhiko Hasegawa
    導入されたバージョン:
    JDK5.0,
    • コンストラクタの詳細

      • WriteTableParamTag

        public WriteTableParamTag()
        デフォルトコンストラクター
        変更履歴:
        6.4.2.0 (2016/01/29) PMD refactoring. Each class should declare at least one constructor.
    • メソッドの詳細

      • doStartTag

        public int doStartTag()
        Taglibの開始タグが見つかったときに処理する doStartTag() を オーバーライドします。
        定義:
        doStartTag インタフェース内 javax.servlet.jsp.tagext.Tag
        オーバーライド:
        doStartTag クラス内 CommonTagSupport
        戻り値:
        後続処理の指示
        変更履歴:
        5.6.6.1 (2013/07/12) caseKey 、caseVal 属性対応
      • doAfterBody

        public int doAfterBody()
        Taglibのタグ本体を処理する doAfterBody() を オーバーライドします。
        定義:
        doAfterBody インタフェース内 javax.servlet.jsp.tagext.IterationTag
        オーバーライド:
        doAfterBody クラス内 CommonTagSupport
        戻り値:
        後続処理の指示(SKIP_BODY)
        変更履歴:
        6.3.1.1 (2015/07/10) BodyString,BodyRawStringは、CommonTagSupport で、trim() します。
      • doEndTag

        public int doEndTag()
        Taglibの終了タグが見つかったときに処理する doEndTag() を オーバーライドします。
        定義:
        doEndTag インタフェース内 javax.servlet.jsp.tagext.Tag
        オーバーライド:
        doEndTag クラス内 CommonTagSupport
        戻り値:
        後続処理の指示
        変更履歴:
        5.6.6.1 (2013/07/12) caseKey 、caseVal 属性対応
      • release2

        protected void release2()
        タグリブオブジェクトをリリースします。 キャッシュされて再利用されるので、フィールドの初期設定を行います。
        オーバーライド:
        release2 クラス内 CommonTagSupport
      • setKey

        public void setKey​(String prmKey)
        【TAG】パラメータとして渡すキー情報([First/Last/MergeSql/TableName/Size/JsonName/LowerCase])を指定します。
        パラメータ:
        prmKey - キー情報 [First/Last/MergeSql/TableName/Size/JsonName/LowerCase]
        変更履歴:
        6.4.3.4 (2016/03/11) String配列 から、Setに置き換えます。
        説明:
        WriteTable に渡すパラメータのキー情報です。 writerClass によって、使用できるキーが異なります。 writerClass="XML"   TableName :XML 形式の ROWSET の table 属性になります。   First :最初に記載して、初期処理(データクリア等)を実行させる、EXEC_SQL 情報になります。   Last :最後に記載して、項目の設定(整合性登録)を行う、EXEC_SQL 情報になります。   MergeSql :このSQL文で UPDATEして、結果が0件ならINSERTを行う、MERGE_SQL 情報になります。 writerClass="JSON"   JsonName :JSON形式で、配列をオブジェクトとしてまとめる場合に使います。   LowerCase :カラム名(=パラメータ名)を小文字にする場合、true をセットします(初期値:false)。 writerClass="CalcDef"   Size :レコードのデータ件数(初期値:25) 値は、value 属性で指定するか、なければ BODY 部に記述します。
      • setValue

        public void setValue​(String val)
        【TAG】パラメータとして渡す設定値を指定します(初期値:null)。
        パラメータ:
        val - 設定値
        説明:
        WriteTable に渡すパラメータの設定値です。 First と Last を指定した場合は、XML 形式で出力する EXEC_SQL 情報になります。 TableName の場合は、XML 形式の ROWSET の table 属性になります。 値は、value 属性で指定するか、なければ BODY 部に記述します。 BODY 部に記述された場合は、文字列を trim() します。 設定値は、value 属性が優先です。ここの値が、null の場合は、 BODY 要素を値として使用します。
      • toString

        public String toString()
        このオブジェクトの文字列表現を返します。 基本的にデバッグ目的に使用します。
        オーバーライド:
        toString クラス内 CommonTagSupport
        戻り値:
        このクラスの文字列表現
        このメソッドは、nullを返しません