|
|
|||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
java.lang.Objectjavax.servlet.jsp.tagext.TagSupport
javax.servlet.jsp.tagext.BodyTagSupport
org.opengion.hayabusa.taglib.CommonTagSupport
org.opengion.hayabusa.taglib.DirectWriteTableTag
public class DirectWriteTableTag
SELECT文を直接実行して、指定のファイルに出力するタグです。 中間の、データ(DBTableModel)を作成しないため、余計なメモリを取らず、 高速にデータを抜き出すことが可能です。 一方、抜き出すデータは生データのため、データの再利用等、システム的な 使用を想定しています。 JDBCErrMsg 形式のPL/SQL をコールして、その検索結果(カーソル)を抜きこともできます。 ※ このタグは、Transaction タグの対象です。
●形式:<og:directWriteTable filename="[・・・]" ・・・ >SELECT * FROM ZYXX </og:directWriteTable >
●body:あり
●Tag定義:
<og:directWriteTable
fileURL 【TAG】保存先ディレクトリ名を指定します (初期値:FILE_URL[=filetemp/])
filename 【TAG】ファイルを作成するときのファイル名をセットします(初期値:システムパラメータのFILE_FILENAME)
zipFilename 【TAG】ZIPファイルを作成するときのZIPファイル名をセットします(初期値:filename + ".zip")
encode 【TAG】ファイルを作成するときのファイルエンコーディング名をセットします (初期値:FILE_ENCODE[=UnicodeLittle])
fileAppend 【TAG】追加モードで書き込むかどうか[true/false]を指定します(初期値:false[通常モード])
zip 【TAG】結果をファイルに出力するときに、ZIPで圧縮するかどうか[true/false]を指定します(初期値:false)
separator 【TAG】可変長ファイルを作成するときの項目区切り文字をセットします (初期値:TAB_SEPARATOR[= ])
useHeader 【TAG】ヘッダーを書き込むかどうか[true/false]を指定します(初期値:true)
displayMsg 【TAG】検索結果を画面上に表示するメッセージリソースIDを指定します(初期値:MSG0033[ 件検索しました])
notfoundMsg 【TAG】検索結果がゼロ件の場合に表示するメッセージリソースIDを指定します(初期値:MSG0077[対象データはありませんでした])
fetchSize 【TAG】(通常は使いません)データのフェッチサイズを指定します(初期値:100)
names 【TAG】PL/SQLを利用する場合の引数にセットすべき データの名称をCSV形式で複数指定します
queryType 【TAG】Query を発行する為のクラスID(JDBC,JDBCErrMsg)を指定します(初期値:JDBC)
dbid 【TAG】(通常は使いません)検索時のDB接続IDを指定します(初期値:DEFAULT)
useNumber 【TAG】行番号を出力するかどうか(初期値:true)
debug 【TAG】デバッグ情報を出力するかどうか[true/false]を指定します(初期値:false)
> ... Body ...
</og:directWriteTable>
●使用例
<og:directWriteTable
dbid = "ORCL" 接続データベースID(初期値:DEFAULT)
separator = "," ファイルの区切り文字(初期値:タブ)
fileURL = "{@USER.ID}" 保存先ディレクトリ名
filename = "{@filename}" 保存ファイル名
encode = "UnicodeLittle" 保存ファイルエンコード名
useHeader = "true" 保存ファイルにヘッダーを出力するかどうか
zip = "true" ZIPファイルに圧縮するかどうか
zipFilename = "Sample.zip" ZIPファイルのファイル名
fileAppend = "true" ファイルを追加モードで登録するかどうか
displayMsg = "MSG0033" 実行後の表示メッセージ
fetchSize = "200" DB検索する場合のフェッチするサイズ
>
SELECT * FROM ZYXX
</og:directWriteTable >
<og:directWriteTable
fileURL = "{@USER.ID}" 保存先ディレクトリ名
filename = "{@filename}" 保存ファイル名
names = "AAA,BBB,CCC,・・・" 指定のキーに対応するリクエスト値を ARG_ARRAY にセットします。
queryType = "JDBCErrMsg" JDBCErrMsg 形式のPL/SQL をコールします。
>
{ call PL/SQL(?,?,?,? ) }
</og:directWriteTable >| 3.5.6.0 (2004/06/18) 新規作成 |
| 3.6.1.0 (2005/01/05) PL/SQLコール(JDBCErrMsg 形式)の実行を追加 |
| フィールドの概要 |
|---|
| クラス 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 |
| コンストラクタの概要 | |
|---|---|
DirectWriteTableTag()
|
|
| メソッドの概要 | |
|---|---|
int |
doAfterBody()
Taglibのタグ本体を処理する doAfterBody() を オーバーライドします。 |
int |
doEndTag()
Taglibの終了タグが見つかったときに処理する doEndTag() を オーバーライドします。 |
int |
doStartTag()
Taglibの開始タグが見つかったときに処理する doStartTag() を オーバーライドします。 |
protected void |
release2()
タグリブオブジェクトをリリースします。 |
void |
setDbid(java.lang.String id)
【TAG】(通常は使いません)検索時のDB接続IDを指定します(初期値:DEFAULT)。 |
void |
setDisplayMsg(java.lang.String id)
【TAG】検索結果を画面上に表示するメッセージリソースIDを指定します(初期値:MSG0033[ 件検索しました])。 |
void |
setEncode(java.lang.String enc)
【TAG】ファイルを作成するときのファイルエンコーディング名をセットします (初期値:FILE_ENCODE[=UnicodeLittle])。 |
void |
setFetchSize(java.lang.String size)
【TAG】(通常は使いません)データのフェッチサイズを指定します(初期値:100)。 |
void |
setFileAppend(java.lang.String flag)
【TAG】追加モードで書き込むかどうか[true/false]を指定します(初期値:false[通常モード])。 |
void |
setFilename(java.lang.String fname)
【TAG】ファイルを作成するときのファイル名をセットします(初期値:システムパラメータのFILE_FILENAME)。 |
void |
setFileURL(java.lang.String url)
【TAG】保存先ディレクトリ名を指定します (初期値:FILE_URL[=filetemp/])。 |
void |
setNames(java.lang.String nm)
【TAG】PL/SQLを利用する場合の引数にセットすべき データの名称をCSV形式で複数指定します。 |
void |
setNotfoundMsg(java.lang.String id)
【TAG】検索結果がゼロ件の場合に表示するメッセージリソースIDを指定します(初期値:MSG0077[対象データはありませんでした])。 |
void |
setQueryType(java.lang.String id)
【TAG】Query を発行する為のクラスID(JDBC,JDBCErrMsg)を指定します(初期値:JDBC)。 |
void |
setSeparator(java.lang.String sep)
【TAG】可変長ファイルを作成するときの項目区切り文字をセットします (初期値:TAB_SEPARATOR[= ])。 |
void |
setUseHeader(java.lang.String flag)
【TAG】ヘッダーを書き込むかどうか[true/false]を指定します(初期値:true)。 |
void |
setUseNumber(java.lang.String flag)
【TAG】ファイルに行番号を出力するかどうか(初期値:true) |
void |
setZip(java.lang.String flag)
【TAG】結果をファイルに出力するときに、ZIPで圧縮するかどうか[true/false]を指定します(初期値:false)。 |
void |
setZipFilename(java.lang.String zipFile)
【TAG】ZIPファイルを作成するときのZIPファイル名をセットします(初期値:filename + ".zip")。 |
java.lang.String |
toString()
このオブジェクトの文字列表現を返します。 |
| クラス 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 DirectWriteTableTag()
| メソッドの詳細 |
|---|
public int doStartTag()
javax.servlet.jsp.tagext.Tag 内の doStartTagCommonTagSupport 内の doStartTagpublic int doAfterBody()
javax.servlet.jsp.tagext.IterationTag 内の doAfterBodyCommonTagSupport 内の doAfterBody| 3.8.6.3 (2006/11/30) SQL 文の前後のスペースを取り除きます。 |
public int doEndTag()
javax.servlet.jsp.tagext.Tag 内の doEndTagCommonTagSupport 内の doEndTag| 3.6.1.0 (2005/01/05) PL/SQLコール(JDBCErrMsg 形式)への対応 |
| 4.0.0.0 (2007/10/18) メッセージリソース統合( getResource().getMessage > getResource().getLabel ) |
protected void release2()
CommonTagSupport 内の release2| 3.6.1.0 (2005/01/05) PL/SQLコール(JDBCErrMsg 形式)への対応 |
| 4.0.0.0 (2007/10/10) dbid の初期値を、"DEFAULT" から null に変更 |
| 5.5.7.1 (2012/10/05) useNumber追加 |
public void setDbid(java.lang.String id)
id - データベース接続ID検索時のDB接続IDを指定します。初期値は、DEFAULT です。
public void setSeparator(java.lang.String sep)
sep - 項目区切り文字TAB_SEPARATOR 可変長ファイルを作成するときの項目区切り文字をセットします。
(初期値:ローカル定義のTAB_SEPARATOR[={@og.value #TAB_SEPARATOR}])。public void setFileURL(java.lang.String url)
url - 保存先ディレクトリ名SystemData.FILE_URL この属性で指定されるディレクトリに、ファイルをセーブします。
指定方法は、通常の fileURL 属性と同様に、先頭が、'/' (UNIX) または、2文字目が、
":" (Windows)の場合は、指定のURLそのままのディレクトリに、そうでない場合は、
fileURL = "{@USER.ID}" と指定すると、FILE_URL 属性で指定のフォルダの下に、
さらに、各個人ID別のフォルダを作成して、そこにセーブします。
(初期値:システム定数のFILE_URL[={@og.value org.opengion.hayabusa.common.SystemData#FILE_URL}])。| 3.5.4.3 (2004/01/05) 内部処理を、makeFileURL に移動。 |
| 4.0.0 (2005/01/31) StringUtil.urlAppend メソッドの利用 |
| 4.0.0.0 (2007/11/20) 指定されたディレクトリ名の最後が"\"or"/"で終わっていない場合に、"/"を付加する。 |
public void setFilename(java.lang.String fname)
fname - ファイル名ファイルを作成するときのファイル名をセットします。
public void setZipFilename(java.lang.String zipFile)
zipFile - ZIPファイル名setZip( String )zip 属性に、true を指定した場合に、ZIPファイル化します。その場合のファイル名を指定します。 なにも指定しない場合は、filename + ".zip" になります。
public void setEncode(java.lang.String enc)
enc - ファイルエンコーディング名SystemData.FILE_ENCODE "DEFAULT","JISAutoDetect" ,"JIS", "EUC_JP", "MS932", "SJIS" , "Windows-31J" , "Shift_JIS"
(初期値:システム定数のFILE_ENCODE[={@og.value org.opengion.hayabusa.common.SystemData#FILE_ENCODE}])。| 2.2.0.0 (2002/12/17) 中国語(国際化)対応 エンコードの取得方法変更 |
| 3.1.3.0 (2003/04/10) FILE_ENCODE から、エンコード情報を取得する。 |
public void setUseHeader(java.lang.String flag)
flag - ヘッダーを書き込むかどうか [true:書き込む/false:書き込まない]#Name ・・・・ ヘッダーの書き込みを指定します。 通常は、書き込み(true)にしておき、使用側でコメントと解釈するように 処理を行うべきです。コメントのため、append モードで途中に現れても 無視できます。また、エンジン標準でデータを取り込む場合に、データの配置が 変更されても取り込みプログラムはそのまま使用できます。 初期値は、true(書き込む)です。
public void setFileAppend(java.lang.String flag)
flag - [true:追加モード/false:新規モード]ファイルを書き込む場合、追加モードで書き込むかどうかをセットします。 新規モード(true)の場合、既存のファイルが存在し、かつ書き込み許可があれば、 上書きで新規に作成します。 初期値は、false(新規モード)です。
public void setZip(java.lang.String flag)
flag - ZIPで圧縮 [true:する/それ以外:しない]setZipFilename( String )大量に抜き出す場合、そのまま、サーバーから取り出すだけでも大変です。 zip 属性を、true にすると、GZIP で圧縮したファイルを作成します。 初期値は、false(圧縮しない)です。
public void setDisplayMsg(java.lang.String id)
id - ディスプレイに表示させるメッセージ IDここでは、検索結果の件数や登録された件数をまず出力し、 その次に、ここで指定したメッセージをリソースから取得して 表示します。 表示させたくない場合は, displayMsg = "" をセットしてください。 初期値は、検索件数を表示します。
public void setNotfoundMsg(java.lang.String id)
id - ディスプレイに表示させるメッセージ IDここでは、検索結果がゼロ件の場合のみ、特別なメッセージを表示させます。 従来は、displayMsg と兼用で、『0 件検索しました』という表示でしたが、 displayMsg の初期表示は、OFF になりましたので、ゼロ件の場合のみ別に表示させます。 表示させたくない場合は, notfoundMsg = "" をセットしてください。 初期値は、MSG0077[対象データはありませんでした]です。
public void setFetchSize(java.lang.String size)
size - フェッチする行数(初期値:100)より多くの行が必要なときに、データベースから取り出す必要がある行数に ついてのヒントを JDBC ドライバに提供します。 指定された行数は、この Statement を使って作成された結果セットにだけ影響します。 指定された値が 0 の場合、ヒントは無視されます。 初期値は、100 です。
public void setNames(java.lang.String nm)
nm - 引数の名称(複数ある場合は、カンマ区切り文字)複数ある場合は、カンマ区切り文字で渡します。 PL/SQL を使用しない場合は、無視されます。
| 3.6.1.0 (2005/01/05) PL/SQLコール(JDBCErrMsg 形式)への対応 |
public void setQueryType(java.lang.String id)
id - Query を発行する為の実クラス IDストアドプロシージャ等を実行する場合に、queryType="JDBCErrMsg" を 指定する必要があります。(それ以外の指定は、初期値の JDBC になります。) 初期値は、"JDBC" です。
| 3.6.1.0 (2005/01/05) PL/SQLコール(JDBCErrMsg 形式)への対応 |
public void setUseNumber(java.lang.String flag)
flag - 行番号出力 [true:する/それ以外:しない]ファイルに行番号を出力するかどうかを指定します。 初期値は、true(出力する)です。
| 5.5.7.1 (2012/10/05) 新規追加 |
public java.lang.String toString()
CommonTagSupport 内の toString
|
openGion 5.5.9.0 | ||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | ||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | ||||||||