|
|
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Objectjavax.servlet.jsp.tagext.TagSupport
javax.servlet.jsp.tagext.BodyTagSupport
org.opengion.hayabusa.taglib.CommonTagSupport
org.opengion.hayabusa.taglib.QueryTag
org.opengion.hayabusa.taglib.FileQueryTag
public class FileQueryTag
ファイルを検索し、DBTableModel にセットするタグです。 ファイルの検索結果は、[WRITABLE],LEVEL,FILE_TYPE,PARENT,NAME,LASTMODIFIED,FILE_LENGTH,RWH,[MD5],[TO_PARENT,TO_NAME],[・・・・] のカラムを持つ DBTableModel にセット されます。このカラムは、固定です。 並び替えについては、このタグで指定しますが、ファイルの選別(where 条件)は、 BODY 部に記述する fileWhere タグで指定します。(複数指定可能)) [カラム名] 検索するファイルの属性は、以下のカラム名で作成されます。 [WRITABLE] useWritable=trueで、先頭カラムに、WRITABLE カラムが挿入されます。 LEVEL ディレクトリを展開する場合のレベル。 FILE_TYPE ファイル(F)かディレクトリ(D)であるか判定。 PARENT この抽象パス名の親のパス名文字列を返します。 NAME この抽象パス名が示すファイルまたはディレクトリの名前を返します。 LASTMODIFIED 最後に変更された時刻を返します。 FILE_LENGTH ファイルの長さを返します。 RWH 読み込み、書き込み、隠し属性をそれぞれ、r,w,h で表します。 [MD5] useMD5=trueで、MD5 というカラムを追加したうえで、ファイルのMD5計算を行います。 [TO_PARENT] useUpdateClms=trueで、fileUpdateタグでCOPYやMOVEを行う時に使用する必須となるカラム(TO_PARENT,TO_NAME)を追加します。 [TO_NAME] 同上 [・・・・] addClms属性で指定されたカラムを追加します。
●形式:<og:fileQuery from="…" multi="true/false" > <og:fileWhere … /> … </og:fileQuery> ●body:あり(EVAL_BODY_BUFFERED:BODYを評価し、{@XXXX} を解析します) ●Tag定義: <og:fileQuery from ○【TAG】検索を開始するファイルまたはディレクトリを指定します(必須)。 multi 【TAG】多段階展開するか、1レベル展開するかどうか[true:多段階/false:1レベル]を指定します(初期値:false:1レベル)。 level 【TAG】多段階展開するレベルを指定します(初期値:100)。 orderBy 【TAG】ソートするカラム名を指定します(一つのみ)。 desc 【TAG】表示順を逆転するかどうか[true/false]を指定します(初期値:false)。 useWritable 【TAG】先頭カラムに、WRITABLE カラムを追加するかどうか[true/false]を指定します(初期値:false)。 useMD5 【TAG】MD5カラムを追加したうえで、MD5計算を行うかどうか[true/false]を指定します(初期値:false)。 useUpdateClms 【TAG】TO_PARENT、TO_NAMEカラムを追加するかどうか[true/false]を指定します(初期値:false)。 addClms 【TAG】検索結果のカラム列に追加するカラム名を、カンマ区切り文字で指定します。 fileType 【TAG】選択対象[FILE/DIR]を指定します。下位展開は考慮(multi 属性準拠)されます。 addFrom 【TAG】from属性で指定された基準ファイル/フォルダ自体をリストに追加するかどうか[true/false]を指定します(初期値:true)。 command 【TAG】コマンド(NEW,RENEW)をセットします("NEW" と "RENEW" 時のみ実行する(初期値:NEW))。 maxRowCount 【TAG】(通常は使いません)データの最大読み込み件数を指定します (初期値:DB_MAX_ROW_COUNT[=1000])(0:[無制限])。 displayMsg 【TAG】検索結果を画面上に表示するメッセージリソースIDを指定します (初期値:VIEW_DISPLAY_MSG[=])v overflowMsg 【TAG】検索データが最大検索数をオーバーした場合に表示するメッセージリソースIDを指定します (初期値:MSG0007[検索結果が、制限行数を超えましたので、残りはカットされました])。 notfoundMsg 【TAG】検索結果がゼロ件の場合に表示するメッセージリソースIDを指定します(初期値:MSG0077[対象データはありませんでした])。 tableId 【TAG】(通常は使いません)結果のDBTableModelを、sessionに登録するときのキーを指定します scope 【TAG】キャッシュする場合のスコープ[request/page/session/applicaton]を指定します(初期値:session)。 debug 【TAG】デバッグ情報を出力するかどうか[true/false]を指定します(初期値:false)。 > ... Body ... </og:fileQuery> ●使用例 ・一般的な属性でファイルの検索を行います。 <og:fileQuery from = "d:/webapps/dbdef/jsp/" multi = "true" command = "{@command}" > <og:fileWhere endWith=".jsp" /> </og:fileQuery> ・最終変更日で逆順ソートする。対象は、2002/10/01 以降に変更されたファイル。 <og:fileQuery from = "d:/webapps/dbdef/jsp/" multi = "true" orderBy = "LASTMODIFIED" desc = "true" command = "{@command}" > <og:fileWhere lastModified="20021001000000" /> </og:fileQuery>
4.0.0.0 (2005/01/31) 内部ロジック改定 |
フィールドの概要 |
---|
クラス org.opengion.hayabusa.taglib.QueryTag から継承されたフィールド |
---|
CMD_NEW, CMD_RENEW, command, displayMsg, dyStart, errCode, errMessage, errMsgId, executeCount, maxRowCount, names, outMessage, quotCheck, skipRowCount, sql, stopError, table, tableId, xssCheck |
クラス javax.servlet.jsp.tagext.BodyTagSupport から継承されたフィールド |
---|
bodyContent |
クラス javax.servlet.jsp.tagext.TagSupport から継承されたフィールド |
---|
id, pageContext |
インタフェース javax.servlet.jsp.tagext.BodyTag から継承されたフィールド |
---|
EVAL_BODY_BUFFERED, EVAL_BODY_TAG |
インタフェース javax.servlet.jsp.tagext.IterationTag から継承されたフィールド |
---|
EVAL_BODY_AGAIN |
インタフェース javax.servlet.jsp.tagext.Tag から継承されたフィールド |
---|
EVAL_BODY_INCLUDE, EVAL_PAGE, SKIP_BODY, SKIP_PAGE |
コンストラクタの概要 | |
---|---|
FileQueryTag()
|
メソッドの概要 | |
---|---|
int |
doAfterBody()
Taglibのタグ本体を処理する doAfterBody() を オーバーライドします。 |
protected void |
execute(java.io.File fin,
int lvl)
FileQuery を実行します。 |
protected void |
release2()
タグリブオブジェクトをリリースします。 |
void |
setAddClms(java.lang.String clms)
【TAG】検索結果のカラム列に追加するカラム名を、カンマ区切り文字で指定します。 |
void |
setAddFrom(java.lang.String flg)
【TAG】from属性で指定された基準ファイル/フォルダ自体をリストに追加するかどうか[true/false]を指定します(初期値:true)。 |
void |
setDesc(java.lang.String flag)
【TAG】表示順を逆転するかどうか[true/false]を指定します(初期値:false)。 |
protected void |
setFileFilter(java.io.FileFilter filter)
FileFilterオブジェクトをセットします。 |
void |
setFileType(java.lang.String str)
【TAG】ファイル名が、指定されたファイルタイプ[DIR/FILE]と一致した場合、スルー(選択)されます。 |
void |
setFrom(java.lang.String url)
【TAG】ファイルの検索元となるディレクトリを指定します。 |
void |
setLevel(java.lang.String lvl)
【TAG】多段階展開するレベルを指定します(初期値:100)。 |
void |
setMulti(java.lang.String mlti)
【TAG】多段階展開するか、1レベル展開するかどうか[true/false]を指定します(初期値:false)。 |
void |
setOrderBy(java.lang.String clm)
【TAG】ソートするカラム名を指定します(一つのみ)。 |
void |
setUseMD5(java.lang.String flag)
【TAG】MD5カラムを追加したうえで、MD5計算を行うかどうか[true/false]を指定します(初期値:false)。 |
void |
setUseUpdateClms(java.lang.String flag)
【TAG】TO_PARENT、TO_NAMEカラムを追加するかどうか[true/false]を指定します(初期値:false)。 |
void |
setUseWritable(java.lang.String flag)
【TAG】先頭カラムに、WRITABLE カラムを追加するかどうか[true/false]を指定します(初期値:false)。 |
java.lang.String |
toString()
このオブジェクトの文字列表現を返します。 |
クラス org.opengion.hayabusa.taglib.QueryTag から継承されたメソッド |
---|
doEndTag, doStartTag, execute, getRequest, setCheckNames, setCommand, setDbid, setDisplayMsg, setMainTrans, setMaxRowCount, setModifyType, setNames, setNotfoundMsg, setOutMessage, setOverflowMsg, setQueryType, setQuotCheck, setSkipRowCount, setStopError, setStopZero, setTableId, setTrace, setUseBeforeHtmlTag, setXssCheck |
クラス javax.servlet.jsp.tagext.BodyTagSupport から継承されたメソッド |
---|
doInitBody, getBodyContent, getPreviousOut, release, setBodyContent |
クラス javax.servlet.jsp.tagext.TagSupport から継承されたメソッド |
---|
findAncestorWithClass, getId, getParent, getValue, getValues, removeValue, setId, setPageContext, setParent, setValue |
クラス java.lang.Object から継承されたメソッド |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
インタフェース javax.servlet.jsp.tagext.Tag から継承されたメソッド |
---|
getParent, setPageContext, setParent |
コンストラクタの詳細 |
---|
public FileQueryTag()
メソッドの詳細 |
---|
public int doAfterBody()
javax.servlet.jsp.tagext.IterationTag
内の doAfterBody
QueryTag
内の doAfterBody
5.3.4.0 (2011/04/01) 指定カラムのソート処理機能追加 |
5.3.5.0 (2011/05/01) 最初のファイルが存在する場合のみ、実行する。 |
protected void release2()
QueryTag
内の release2
5.3.4.0 (2011/04/01) 指定カラムのソート処理機能、カラム追加機能、fileType追加 |
5.3.9.0 (2011/09/01) addFrom属性追加 |
5.7.4.3 (2014/03/28) useWritable,useMD5属性追加。valClms を defClms に置き換え。 |
protected void execute(java.io.File fin, int lvl)
fin
- 検索を開始するファイル/ディレクトリlvl
- 階層展開レベル5.3.4.0 (2011/04/01) fileType の条件に合致する場合だけ、データを作成する。 |
5.3.7.0 (2011/07/01) フォルダにアクセスできない場合は、null となるのでその対応 |
5.3.9.0 (2011/09/01) addFrom属性追加 |
public void setFrom(java.lang.String url)
url
- ファイルの検索元となるディレクトリファイルの検索元となるディレクトリを指定します。
4.0.0.0 (2007/11/20) 指定されたディレクトリ名の最後が"\"or"/"で終わっていない場合に、"/"を付加する。 |
public void setMulti(java.lang.String mlti)
mlti
- 多段階展開するか [true:する/false:1レベル]初期値は、false (1レベル) です。
public void setLevel(java.lang.String lvl)
lvl
- 多段階展開するレベルpublic void setOrderBy(java.lang.String clm)
clm
- ソートするカラム名(一つのみ)、逆順は、マイナスを付ける。setDesc( String )
ソートするカラム名を、"LEVEL","FILE_TYPE","PARENT","NAME","LASTMODIFIED","FILE_LENGTH","RWH" から一つ選びます。 これは、複数カラムでのソートはできません。 逆順にソートする場合は、desc属性を true にセットください。 + をつけても、無効(カラム名がないということでエラーになります。
5.3.4.0 (2011/04/01) 新規追加 |
public void setDesc(java.lang.String flag)
flag
- 表示順を逆転するかどうか [逆順:true/正順:false]setOrderBy( String )
orderBy 属性で指定した表示順を、逆順にするかどうかを指定できます。 初期値は、false (昇順) です。
5.3.4.0 (2011/04/01) 新規追加 |
public void setUseWritable(java.lang.String flag)
flag
- 先頭カラムに、WRITABLE カラムを追加するかどうか[true:追加する/false:追加しない]ファイル検索結果の1レコード単位に、書き込み許可/禁止属性を付けるには、 カラム列の先頭に、WRITABLE カラムを追加する必要があります。 初期値は、false (追加しない) です。
5.7.4.3 (2014/03/28) 新規追加 |
public void setUseMD5(java.lang.String flag)
flag
- MD5カラムを追加したうえで、MD5計算を行うかどうか[true:追加する/false:追加しない]ファイルの改変等をチェックするには、ファイルのハッシュ値を拾う必要があります。 タイムスタンプとサイズ(LASTMODIFIED,FILE_LENGTH)でも、類似の処理は可能ですが、 より、厳密な一致をみるなら、MD5でハッシュした結果を突き合わせるのがベストです。 useMD5=true に設定すると、MD5 というカラムを追加したうえで、MD5計算結果をセットします。 初期値は、false (追加しない) です。
5.7.4.3 (2014/03/28) 新規追加 |
public void setUseUpdateClms(java.lang.String flag)
flag
- TO_PARENT、TO_NAMEカラムを追加するかどうか [true:追加する/false:追加しない]setAddClms( String )
,
FileUpdateTag
fileUpdateタグでは、ファイルのCOPYやMOVEが出来ますが、そのコピー先、移動先の ファイルを行ごとに指定する場合、TO_PARENT、TO_NAMEカラムという固定名のカラムが 必要です。 これを、addClms 属性で指定する代わりに、この属性で、true をセットすることで、 自動的に追加されます。 初期値は、false (追加しない) です。
5.3.4.0 (2011/04/01) 新規追加 |
public void setAddClms(java.lang.String clms)
clms
- 検索結果のカラム列に追加するカラム名を、カンマ区切り文字で指定します。setUseUpdateClms( String )
デフォルトのカラム名、[WRITABLE],LEVEL,FILE_TYPE,PARENT,NAME,LASTMODIFIED,FILE_LENGTH,RWH,[MD5],[TO_PARENT,TO_NAME] 以外に、指定のカラム名を追加することが可能です。 これは、ファイル検索結果以外の項目を追加して、データベースに書き込む場合に、利用できます。 並び順は、デフォルトカラムの後ろに、指定のカラムの順番で付きます。 ここで追加したカラムには、カラムリソースの初期値がセットされます。
5.3.4.0 (2011/04/01) 新規追加 |
public void setFileType(java.lang.String str)
str
- 指定するファイルタイプ(DIR,FILE,null)大文字小文字は区別しません。 ファイルタイプ は、DIR,FILE が指定できます。 DIR は、ディレクトリのみ検索します。(階層下がりも行います) FILEは、ファイルのみ検索します。(階層下がりも行います) 引数が null の場合は、追加しません。(つまり、すべてスルーされます。)
5.3.4.0 (2011/04/01) fileType メソッドで選択対象指定の追加 |
public void setAddFrom(java.lang.String flg)
flg
- 基準ファイル/フォルダ自体をリストに追加するかどうか true:追加する/false:追加しない]初期値はtrue(追加する)です。
5.3.9.0 (2011/09/01) 新規作成 |
protected void setFileFilter(java.io.FileFilter filter)
filter
- オブジェクトpublic java.lang.String toString()
QueryTag
内の toString
|
openGion 5.7.6.0 | ||||||||
前のクラス 次のクラス | フレームあり フレームなし | ||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |