org.opengion.plugin.io
クラス TableWriter_XML
java.lang.Object
org.opengion.plugin.io.TableWriter_Default
org.opengion.plugin.io.TableWriter_XML
- すべての実装されたインタフェース:
- TableWriter
public class TableWriter_XML
- extends TableWriter_Default
TableWriter をXML形式で出力する為の実装クラスです。
DefaultTableWriter を継承していますので,ラベル,名前,データの出力部のみ
オーバーライドして,XML形式ファイルの出力機能を実現しています。
出力のXML形式は、拡張オラクル XDK形式のXMLファイルです。
オラクルXDK形式のXMLとは、下記のような ROWSET をトップとする ROW の
集まりで1レコードを表し、各ROWには、カラム名をキーとするXMLになっています。
<ROWSET>
<ROW num="1">
<カラム1>値1</カラム1>
・・・
<カラムn>値n</カラムn>
</ROW>
・・・
<ROW num="n">
・・・
</ROW>
<ROWSET>
この形式であれば、XDK(Oracle XML Developer's Kit)を利用すれば、非常に簡単に
データベースとXMLファイルとの交換が可能です。
XDK(Oracle XML Developer's Kit)
拡張XDK形式とは、ROW 以外に、SQL処理用タグ(EXEC_SQL)を持つ XML ファイルです。
これは、オラクルXDKで処理する場合、無視されますので、同様に扱うことが出来ます。
この、EXEC_SQL は、それそれの XMLデータをデータベースに登録する際に、
SQL処理を自動的に流す為の、SQL文を記載します。
この処理は、イベント毎に実行される為、その配置順は重要です。
このタグは、複数記述することも出来ますが、BODY部には、1つのSQL文のみ記述します。
<ROWSET tablename="GEXX" >
<EXEC_SQL> 最初に記載して、初期処理(データクリア等)を実行させる。
delete from GEXX where YYYYY
</EXEC_SQL>
<ROW num="1">
<カラム1>値1</カラム1>
・・・
<カラムn>値n</カラムn>
</ROW>
・・・
<ROW num="n">
・・・
</ROW>
<EXEC_SQL> 最後に記載して、項目の設定(整合性登録)を行う。
update GEXX set AA='XX' , BB='XX' where YYYYY
</EXEC_SQL>
<ROWSET>
- 機能階層
- ファイル出力
- バージョン
- 4.0
- 作成者
- Kazuhiko Hasegawa
- 導入されたバージョン:
- JDK5.0,
メソッドの概要 |
void |
setParam(java.util.List<HybsEntry> listParam)
パラメーターリストをセットします。 |
protected void |
writeData(DBTableModel table,
java.io.PrintWriter writer)
PrintWriter に DBTableModelのテーブル情報を書き込みます。 |
void |
writeDBTable(java.io.PrintWriter writer)
DBTableModel から データを作成して,PrintWriter に書き出します。 |
protected void |
writeHeader(java.io.PrintWriter writer)
PrintWriter に DBTableModelのヘッダー情報を書き込みます。 |
クラス org.opengion.plugin.io.TableWriter_Default から継承されたメソッド |
createDBColumn, getDBTableModel, getEncode, getHeaderSequence, getSeparator, isAppend, isExcel, isUseNumber, quotation, setAppend, setColumns, setDBTableModel, setEncode, setFilename, setFontName, setFontPoint, setHeaderSequence, setRefFilename, setRefSheetName, setSeparator, setSheetName, setUseNumber, writeClass, writeDBTable, writeLabel, writeName, writeSeparator, writeSize |
クラス java.lang.Object から継承されたメソッド |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
TableWriter_XML
public TableWriter_XML()
writeDBTable
public void writeDBTable(java.io.PrintWriter writer)
- DBTableModel から データを作成して,PrintWriter に書き出します。
- 定義:
- インタフェース
TableWriter
内の writeDBTable
- オーバーライド:
- クラス
TableWriter_Default
内の writeDBTable
- パラメータ:
writer
- PrintWriter- 変更履歴:
3.1.1.0 (2003/03/28) 同期メソッド(synchronized付き)を非同期に変更する。 |
3.5.4.3 (2004/01/05) 引数に PrintWriter を受け取るように変更します。 |
writeHeader
protected void writeHeader(java.io.PrintWriter writer)
- PrintWriter に DBTableModelのヘッダー情報を書き込みます。
XML のヘッダーは、<?xml version='1.0' encoding='encode値'?> になります。
encoding属性には、encode値をセットします。
encoding属性に設定できる値は、"UTF-8","UTF-16","Shift_JIS" です。
- オーバーライド:
- クラス
TableWriter_Default
内の writeHeader
- パラメータ:
writer
- PrintWriter- 変更履歴:
3.1.1.0 (2003/03/28) 同期メソッド(synchronized付き)を非同期に変更する。 |
4.0.0 (2005/01/31) XML宣言部のencoding属性を、encode値をセットする。 |
writeData
protected void writeData(DBTableModel table,
java.io.PrintWriter writer)
- PrintWriter に DBTableModelのテーブル情報を書き込みます。
出力のXML形式は、ORACLE XDK での出力ファイルと同じ形式ですので、直接データベースに
登録することができます。
- オーバーライド:
- クラス
TableWriter_Default
内の writeData
- パラメータ:
table
- DBTableModelwriter
- PrintWriter- 変更履歴:
3.1.1.0 (2003/03/28) 同期メソッド(synchronized付き)を非同期に変更する。 |
3.8.0.1 (2005/06/17) DBTypeが NVAR の場合は、元のUnicodeに戻します。 |
4.0.0 (2005/01/31) EXEC_SQL タグ機能の追加 |
setParam
public void setParam(java.util.List<HybsEntry> listParam)
- パラメーターリストをセットします。
内部は、HybsEntry クラスを持っています。
引数が、null の場合は、何もしません。
- 定義:
- インタフェース
TableWriter
内の setParam
- オーバーライド:
- クラス
TableWriter_Default
内の setParam
- パラメータ:
listParam
- List パラメーターリスト- 変更履歴:
Webアプリケーションフレームワーク openGion
Copyright (c) 2009 The openGion Project.