クラス QueryTag

  • すべての実装されたインタフェース:
    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
    直系の既知のサブクラス:
    EntryQueryTag, FileQueryTag, GuiQueryTag, PlsqlUpdateTag, TableUpdateTag

    public class QueryTag
    extends CommonTagSupport
    データベースの検索を行うタグです。 このタグの内容に、SQL文を記述します。 whereタグ、 andタグ を使うと引数に応じて 実行されるSQL文が異なります(使用例参照)。 また、PL/SQLのSPで検索を行うときもこのタグを使います。 SystemData の USE_SQL_INJECTION_CHECK が true か、quotCheck 属性が true の場合は、 SQLインジェクション対策用のシングルクォートチェックを行います。リクエスト引数に シングルクォート(')が含まれると、エラーになります。 同様にUSE_XSS_CHECKがtrueか、xssCheck属性がtrueの場合は、 クロスサイトススクリプティング(XSS)対策のためless/greater than signのチェックを行います。 実行後にリクエストパラメータに以下の値がセットされます。 DB.COUNT : 検索結果の件数 DB.ERR_CODE : 検索結果のエラーコード DB.IS_UPDATE : 更新(=true)/検索(false) ※ このタグは、Transaction タグの対象です。
    関連項目:
    直列化された形式
    導入されたバージョン:
    JDK5.0,
    • フィールドの詳細

      • skipRowCount

        protected int skipRowCount
        スキップ行数
      • outMessage

        protected boolean outMessage
        アウトメッセージ
      • errCode

        protected int errCode
        エラーコード
      • displayMsg

        protected String displayMsg
        ディスプレイメッセージ
      • dyStart

        protected long dyStart
        3.5.4.7 (2004/02/06) 実行時間測定用のDIV要素を出力します。
      • useTimeView

        protected boolean useTimeView
        タイムバーを使用するかどうか
      • stopError

        protected boolean stopError
        4.3.3.0 (2008/09/22) PLSQL/SQL実行エラーの際に、処理を中止するかどうか。
      • dispError

        protected boolean dispError
        5.9.26.1 (2017/11/10) 実行エラーの際に、エラーを画面に出力するかどうか。
      • quotCheck

        protected boolean quotCheck
        クオートチェック
      • xssCheck

        protected boolean xssCheck
        XSSチェック
      • useSLabel

        protected boolean useSLabel
        SLABELを利用するかどうか
    • コンストラクタの詳細

      • QueryTag

        public QueryTag()
        デフォルトコンストラクター
    • メソッドの詳細

      • doStartTag

        public int doStartTag()
        Taglibの開始タグが見つかったときに処理する doStartTag() を オーバーライドします。
        定義:
        doStartTag インタフェース内 javax.servlet.jsp.tagext.Tag
        オーバーライド:
        doStartTag クラス内 CommonTagSupport
        戻り値:
        後続処理の指示
      • doAfterBody

        public int doAfterBody()
        Taglibのタグ本体を処理する doAfterBody() を オーバーライドします。
        定義:
        doAfterBody インタフェース内 javax.servlet.jsp.tagext.IterationTag
        オーバーライド:
        doAfterBody クラス内 CommonTagSupport
        戻り値:
        後続処理の指示(SKIP_BODY)
      • doEndTag

        public int doEndTag()
        Taglibの終了タグが見つかったときに処理する doEndTag() を オーバーライドします。
        定義:
        doEndTag インタフェース内 javax.servlet.jsp.tagext.Tag
        オーバーライド:
        doEndTag クラス内 CommonTagSupport
        戻り値:
        後続処理の指示
      • release2

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

        protected void execute​(Query query)
        Query を実行します。
        パラメータ:
        query - オブジェクト
      • setQuery

        protected void setQuery​(String type,
                                String query)
        BODY部の TableUpdateParamTag に書かれたquery文を受け取ります。 typeには、UPDATEかINSERTが指定され、それに応じたqueryを各変数にセットします。
        パラメータ:
        type - Queryタイプ(UPDATE,INSERT,その他)
        query - SQL文
      • getRequest

        protected String[] getRequest​(String... nameArray)
        名称配列を元に、リクエスト情報のデータを取得します。 checkNames 属性に設定されているカラムがあれば、値を正規化します。
        パラメータ:
        nameArray - キーとなる名称の配列
        戻り値:
        そのリクエスト情報の配列(可変長引数)
      • addPlaceValue

        protected void addPlaceValue​(String val)
        子タグ(andタグ)でプレースホルダーを設定した時に利用するメソッドです。 queryタグ内部のプレースホルダリストに追加します。
        パラメータ:
        val - 追加分
      • setSkipRowCount

        public void setSkipRowCount​(String count)
        【TAG】(通常は使いません)データの読み始めの初期値を指定します。
        パラメータ:
        count - 読み始めの初期値
      • setMaxRowCount

        public void setMaxRowCount​(String count)
        【TAG】(通常は使いません)データの最大読み込み件数を指定します (初期値:DB_MAX_ROW_COUNT[=])。
        パラメータ:
        count - 最大件数
        関連項目:
        SystemData.DB_MAX_ROW_COUNT
      • setTableId

        public void setTableId​(String id)
        【TAG】(通常は使いません)結果のDBTableModelを、sessionに登録するときのキーを指定します (初期値:HybsSystem#TBL_MDL_KEY[=])。
        パラメータ:
        id - テーブルID (sessionに登録する時のID)
      • setDbid

        public void setDbid​(String id)
        【TAG】(通常は使いません)Queryオブジェクトを作成する時のDB接続IDを指定します。
        パラメータ:
        id - データベース接続ID
      • setCommand

        public void setCommand​(String cmd)
        【TAG】コマンド (NEW,RENEW)をセットします(PlsqlUpdateTag,UpdateTag の場合は、ENTRY)。
        パラメータ:
        cmd - コマンド (public static final 宣言されている文字列)
        関連項目:
        コマンド定数
      • setStopZero

        public void setStopZero​(String cmd)
        【TAG】検索結果が0件のとき処理を停止するかどうか[true/false]を指定します(初期値:false[続行する])。
        パラメータ:
        cmd - 0件時停止可否 [true:処理を中止する/false:続行する]
      • setDisplayMsg

        public void setDisplayMsg​(String id)
        【TAG】検索結果を画面上に表示するメッセージリソースIDを指定します (初期値:VIEW_DISPLAY_MSG[=])。
        パラメータ:
        id - 表示メッセージID
        関連項目:
        SystemData.VIEW_DISPLAY_MSG
      • setOverflowMsg

        public void setOverflowMsg​(String id)
        【TAG】検索データが最大検索数をオーバーした場合に表示するメッセージリソースIDを指定します (初期値:MSG0007[検索結果が、制限行数を超えましたので、残りはカットされました])。
        パラメータ:
        id - オーバー時メッセージID
      • setNotfoundMsg

        public void setNotfoundMsg​(String id)
        【TAG】検索結果がゼロ件の場合に表示するメッセージリソースIDを指定します(初期値:MSG0077[対象データはありませんでした])。
        パラメータ:
        id - ゼロ件メッセージID
      • setNames

        public void setNames​(String nm)
        【TAG】PL/SQLを利用する場合の引数にセットすべき データの名称をCSV形式で複数指定します。
        パラメータ:
        nm - 引数の名称 (CSV形式)
      • setOutMessage

        public void setOutMessage​(String flag)
        【TAG】検索結果のメッセージを表示する/しない[true/false]を指定します(初期値:true)。
        パラメータ:
        flag - 検索結果メッセージ [true:表示する/それ以外:含めない]
      • setTrace

        public void setTrace​(String flag)
        【TAG】引数の SQL 文を EXPLAIN PLAN を[true:行う/それ以外:行わない]を指定します(初期値:false)。
        パラメータ:
        flag - トレース [true:行う/それ以外:行わない]
      • setCheckNames

        public void setCheckNames​(String nm)
        【TAG】リクエスト変数の正規化を行うカラムをCSV形式で複数指定します。
        パラメータ:
        nm - 正規化処理カラム (CSV形式)
      • setModifyType

        public void setModifyType​(String type)
        【TAG】DB検索時の モディファイタイプを指定します[A:追加/C:更新/D:削除]。
        パラメータ:
        type - Dモディファイタイプ [A:追加/C:更新/D:削除]
      • setQuotCheck

        public void setQuotCheck​(String flag)
        【TAG】リクエスト情報の シングルクォート(') 存在チェックを実施するかどうか[true/false]を設定します (初期値:USE_SQL_INJECTION_CHECK[=])。
        パラメータ:
        flag - クォートチェック [true:する/それ以外:しない]
      • setXssCheck

        public void setXssCheck​(String flag)
        【TAG】リクエスト情報の HTMLTag開始/終了文字(><) 存在チェックを実施するかどうか[true/false]を設定します (初期値:USE_XSS_CHECK[=])。
        パラメータ:
        flag - XSSチェック [true:する/false:しない]
        関連項目:
        SystemData.USE_XSS_CHECK
      • setStopError

        public void setStopError​(String flag)
        【TAG】PLSQL/SQL処理エラーの時に処理を中止するかどうか[true/false]を設定します(初期値:true)。
        パラメータ:
        flag - エラー時処理中止 [true:中止する/false:中止しない]
      • setDispError

        public void setDispError​(String flag)
        【TAG】PLSQL/SQL処理エラーの時にエラーを画面表示するか[true/false]を設定します(初期値:true)。
        パラメータ:
        flag - [true:表示する/false:表示しない]
      • setMainTrans

        public void setMainTrans​(String flag)
        【TAG】(通常は使いません)タグで処理される処理がメインとなるトランザクション処理かどうかを指定します(初期値:true)。
        パラメータ:
        flag - メイントランザクションかどうか [true:メイン/false:その他]
      • setUseBeforeHtmlTag

        public void setUseBeforeHtmlTag​(String useTag)
        【TAG】 処理時間(queryTime)などの情報出力[true:有効/false:無効]を指定します(初期値:true)。
        パラメータ:
        useTag - 情報出力の有効/無効 [true:有効/false:無効]
      • setUseTimeView

        public void setUseTimeView​(String flag)
        【TAG】処理時間を表示する TimeView を表示するかどうか[true:する/false:しない]を指定します (初期値:VIEW_USE_TIMEBAR[=])。
        パラメータ:
        flag - 処理時間を表示 [true:する/false:しない]
      • setUseSLabel

        public void setUseSLabel​(String prm)
        【TAG】エラーメッセージにSLABELを利用するかどうか[true/false]を指定します(初期値:false)。
        パラメータ:
        prm - SLABEL利用 [true:利用する/false:利用しない]
      • toString

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