|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Objectjp.terasoluna.fw.ex.unit.io.impl.DbTarget<T>
public class DbTarget<T>
入力ソースオブジェクトをDBに出力します。
コンストラクタまたはsetterにて以下のパラメータを指定します。
パラメータ名 | 説明 | 設定箇所 | 必須 |
---|---|---|---|
jdbcTemplate | JdbcTemplate オブジェクト。DataSource オブジェクトが設定されている必要があります。 |
コンストラクタ | ○ |
tableName | 出力先テーブル名。 | コンストラクタ | |
clazz | 出力対象となるBeanのクラス。このクラス名が出力先テーブル名に使用されます。 | コンストラクタ | |
sql |
データ挿入用SQL。デフォルトではテーブル名とヘッダ情報から自動で作成されます。自動で作成されたSQLではテストできない場合のみ変更してください。(
setSql(String) 参照) |
setter |
InputSource
から渡されるヘッダ情報からINSERT文を作成し、InputSource
が生成するオブジェクトの値を埋め込んだSQLを実行します。CsvSource
参照。
フィールドの概要 | |
---|---|
protected String[] |
header
|
protected String |
sql
|
protected String |
tableName
|
protected org.springframework.jdbc.core.JdbcTemplate |
template
|
コンストラクタの概要 | |
---|---|
DbTarget(org.springframework.jdbc.core.JdbcTemplate template,
Class<T> clazz)
|
|
DbTarget(org.springframework.jdbc.core.JdbcTemplate template,
String tableName)
|
メソッドの概要 | |
---|---|
void |
close()
出力終了処理を行います。 |
String |
getSql()
データ挿入用SQLを返却します。 |
void |
setSql(String sql)
データ挿入用SQLを設定します。 |
void |
write(T obj)
一行あたりのオブジェクトを書き込みます。 |
void |
writeHeader(String[] header)
ヘッダ情報を書き込みます。 |
クラス java.lang.Object から継承されたメソッド |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
フィールドの詳細 |
---|
protected final org.springframework.jdbc.core.JdbcTemplate template
protected String sql
protected String[] header
protected String tableName
コンストラクタの詳細 |
---|
public DbTarget(org.springframework.jdbc.core.JdbcTemplate template, String tableName)
public DbTarget(org.springframework.jdbc.core.JdbcTemplate template, Class<T> clazz)
メソッドの詳細 |
---|
public void write(T obj)
OutputTarget
の記述:
OutputTarget<T>
内の write
obj
- 書き込むオブジェクトpublic void writeHeader(String[] header)
OutputTarget
の記述:
OutputTarget<T>
内の writeHeader
header
- ヘッダ情報public void close()
OutputTarget
の記述:
OutputTarget<T>
内の close
public String getSql()
public void setSql(String sql)
このSQLがwrite(Object)
メソッド実行中に、行オブジェクトのフィールド値をバインドして実行されます。 バインドパラメータの順番はwriteHeader(String[])
で渡されるヘッダ情報の順番に一致します。 本メソッドでSQLを設定しない場合はwriteHeader(String[])
で渡されるヘッダ情報とテーブル名から自動で SQLを作成します(JdbcTemplateUtils.createInsertSql(String, String[])
使用)。 ヘッダ情報の順序はwriteHeader(String[])
実行元によって変わるため、 本メソッドでSQLを設定する場合は必ずヘッダ情報の順序を確認してください。
sql
- データ挿入用SQL
|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |