com.lavans.util.jdbc.cluster
クラス ClusterPreparedStatement
java.lang.Object
com.lavans.util.jdbc.cluster.ClusterStatement
com.lavans.util.jdbc.cluster.ClusterPreparedStatement
- すべての実装されたインタフェース:
- ClusterStatementInterface, java.sql.PreparedStatement, java.sql.Statement
- 直系の既知のサブクラス:
- ClusterCallableStatement
public class ClusterPreparedStatement
- extends ClusterStatement
- implements java.sql.PreparedStatement
PrepareStatementをクラスタ対応化するクラス。
setXX()でセットされたパラメータを保持し、DB切り替えで再実行する際には
再度setXX()を行う。
executeUpdate()等の更新処理が複数回実行された後、
Commitする前にDB切替が起きた場合、すべての更新処理が再実行される。
従って、トランザクション内で一つのStatementを持ち回って更新処理を
行う処理はフェイルオーバーできる。
sequenceを使って連番管理している場合は2カウントアップされる?(要確認)。
インタフェース java.sql.Statement から継承されたフィールド |
CLOSE_ALL_RESULTS, CLOSE_CURRENT_RESULT, EXECUTE_FAILED, KEEP_CURRENT_RESULT, NO_GENERATED_KEYS, RETURN_GENERATED_KEYS, SUCCESS_NO_INFO |
メソッドの概要 |
void |
addBatch()
|
void |
clearParameters()
|
boolean |
execute()
|
java.sql.ResultSet |
executeQuery()
|
int |
executeUpdate()
|
java.sql.ResultSet |
getAnotherResultSet()
ResultSet再生成処理。 |
java.sql.ResultSetMetaData |
getMetaData()
|
java.sql.ParameterMetaData |
getParameterMetaData()
|
void |
reupdateStatement(java.sql.Statement st)
DB切替時、新たに取得したStatementに対して
更新処理を再実行する。 |
void |
setArray(int i,
java.sql.Array x)
|
void |
setAsciiStream(int parameterIndex,
java.io.InputStream x,
int length)
|
void |
setBigDecimal(int parameterIndex,
java.math.BigDecimal x)
|
void |
setBinaryStream(int parameterIndex,
java.io.InputStream x,
int length)
|
void |
setBlob(int i,
java.sql.Blob x)
|
void |
setBoolean(int parameterIndex,
boolean x)
|
void |
setByte(int parameterIndex,
byte x)
|
void |
setBytes(int parameterIndex,
byte[] x)
|
void |
setCharacterStream(int parameterIndex,
java.io.Reader reader,
int length)
|
void |
setClob(int i,
java.sql.Clob x)
|
void |
setDate(int parameterIndex,
java.sql.Date x)
|
void |
setDate(int parameterIndex,
java.sql.Date x,
java.util.Calendar cal)
|
void |
setDouble(int parameterIndex,
double x)
|
void |
setFloat(int parameterIndex,
float x)
|
void |
setInt(int parameterIndex,
int x)
|
void |
setLong(int parameterIndex,
long x)
|
void |
setNull(int parameterIndex,
int sqlType)
|
void |
setNull(int paramIndex,
int sqlType,
java.lang.String typeName)
|
void |
setObject(int parameterIndex,
java.lang.Object x)
|
void |
setObject(int parameterIndex,
java.lang.Object x,
int targetSqlType)
|
void |
setObject(int parameterIndex,
java.lang.Object x,
int targetSqlType,
int scale)
|
void |
setRef(int i,
java.sql.Ref x)
|
void |
setShort(int parameterIndex,
short x)
|
void |
setString(int parameterIndex,
java.lang.String x)
|
void |
setTime(int parameterIndex,
java.sql.Time x)
|
void |
setTime(int parameterIndex,
java.sql.Time x,
java.util.Calendar cal)
|
void |
setTimestamp(int parameterIndex,
java.sql.Timestamp x)
|
void |
setTimestamp(int parameterIndex,
java.sql.Timestamp x,
java.util.Calendar cal)
|
void |
setUnicodeStream(int parameterIndex,
java.io.InputStream x,
int length)
推奨されていません。 |
void |
setURL(int parameterIndex,
java.net.URL x)
|
クラス com.lavans.util.jdbc.cluster.ClusterStatement から継承されたメソッド |
addBatch, cancel, clearBatch, clearWarnings, close, execute, execute, execute, execute, executeBatch, executeQuery, executeUpdate, executeUpdate, executeUpdate, executeUpdate, getConnection, getFetchDirection, getFetchSize, getGeneratedKeys, getMaxFieldSize, getMaxRows, getMoreResults, getMoreResults, getQueryTimeout, getResultSet, getResultSetConcurrency, getResultSetHoldability, getResultSetType, getUpdateCount, getWarnings, setCursorName, setEscapeProcessing, setFetchDirection, setFetchSize, setMaxFieldSize, setMaxRows, setQueryTimeout |
クラス java.lang.Object から継承されたメソッド |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
インタフェース java.sql.Statement から継承されたメソッド |
addBatch, cancel, clearBatch, clearWarnings, close, execute, execute, execute, execute, executeBatch, executeQuery, executeUpdate, executeUpdate, executeUpdate, executeUpdate, getConnection, getFetchDirection, getFetchSize, getGeneratedKeys, getMaxFieldSize, getMaxRows, getMoreResults, getMoreResults, getQueryTimeout, getResultSet, getResultSetConcurrency, getResultSetHoldability, getResultSetType, getUpdateCount, getWarnings, setCursorName, setEscapeProcessing, setFetchDirection, setFetchSize, setMaxFieldSize, setMaxRows, setQueryTimeout |
ClusterPreparedStatement
public ClusterPreparedStatement(ClusterConnection con,
java.sql.PreparedStatement st)
- パラメータ:
con
- st
-
reupdateStatement
public void reupdateStatement(java.sql.Statement st)
throws java.sql.SQLException
- DB切替時、新たに取得したStatementに対して
更新処理を再実行する。
- 定義:
- インタフェース
ClusterStatementInterface
内の reupdateStatement
- オーバーライド:
- クラス
ClusterStatement
内の reupdateStatement
- パラメータ:
-
- 例外:
java.sql.SQLException
getAnotherResultSet
public java.sql.ResultSet getAnotherResultSet()
throws java.sql.SQLException
- ResultSet再生成処理。
ResultSetで障害が起きたときに、ResultSetから呼ばれる。
- 定義:
- インタフェース
ClusterStatementInterface
内の getAnotherResultSet
- オーバーライド:
- クラス
ClusterStatement
内の getAnotherResultSet
- 例外:
java.sql.SQLException
- 関連項目:
ClusterStatementInterface.getAnotherResultSet()
executeQuery
public java.sql.ResultSet executeQuery()
throws java.sql.SQLException
- 定義:
- インタフェース
java.sql.PreparedStatement
内の executeQuery
- 例外:
java.sql.SQLException
executeUpdate
public int executeUpdate()
throws java.sql.SQLException
- 定義:
- インタフェース
java.sql.PreparedStatement
内の executeUpdate
- 例外:
java.sql.SQLException
execute
public boolean execute()
throws java.sql.SQLException
- 定義:
- インタフェース
java.sql.PreparedStatement
内の execute
- 例外:
java.sql.SQLException
addBatch
public void addBatch()
throws java.sql.SQLException
- 定義:
- インタフェース
java.sql.PreparedStatement
内の addBatch
- 例外:
java.sql.SQLException
clearParameters
public void clearParameters()
throws java.sql.SQLException
- 定義:
- インタフェース
java.sql.PreparedStatement
内の clearParameters
- 例外:
java.sql.SQLException
- 関連項目:
PreparedStatement.clearParameters()
setByte
public void setByte(int parameterIndex,
byte x)
throws java.sql.SQLException
- 定義:
- インタフェース
java.sql.PreparedStatement
内の setByte
- 例外:
java.sql.SQLException
- 関連項目:
PreparedStatement.setByte(int, byte)
setDouble
public void setDouble(int parameterIndex,
double x)
throws java.sql.SQLException
- 定義:
- インタフェース
java.sql.PreparedStatement
内の setDouble
- 例外:
java.sql.SQLException
setFloat
public void setFloat(int parameterIndex,
float x)
throws java.sql.SQLException
- 定義:
- インタフェース
java.sql.PreparedStatement
内の setFloat
- 例外:
java.sql.SQLException
setInt
public void setInt(int parameterIndex,
int x)
throws java.sql.SQLException
- 定義:
- インタフェース
java.sql.PreparedStatement
内の setInt
- 例外:
java.sql.SQLException
setNull
public void setNull(int parameterIndex,
int sqlType)
throws java.sql.SQLException
- 定義:
- インタフェース
java.sql.PreparedStatement
内の setNull
- 例外:
java.sql.SQLException
setLong
public void setLong(int parameterIndex,
long x)
throws java.sql.SQLException
- 定義:
- インタフェース
java.sql.PreparedStatement
内の setLong
- 例外:
java.sql.SQLException
setShort
public void setShort(int parameterIndex,
short x)
throws java.sql.SQLException
- 定義:
- インタフェース
java.sql.PreparedStatement
内の setShort
- 例外:
java.sql.SQLException
setBoolean
public void setBoolean(int parameterIndex,
boolean x)
throws java.sql.SQLException
- 定義:
- インタフェース
java.sql.PreparedStatement
内の setBoolean
- 例外:
java.sql.SQLException
setBytes
public void setBytes(int parameterIndex,
byte[] x)
throws java.sql.SQLException
- 定義:
- インタフェース
java.sql.PreparedStatement
内の setBytes
- 例外:
java.sql.SQLException
setAsciiStream
public void setAsciiStream(int parameterIndex,
java.io.InputStream x,
int length)
throws java.sql.SQLException
- 定義:
- インタフェース
java.sql.PreparedStatement
内の setAsciiStream
- 例外:
java.sql.SQLException
setBinaryStream
public void setBinaryStream(int parameterIndex,
java.io.InputStream x,
int length)
throws java.sql.SQLException
- 定義:
- インタフェース
java.sql.PreparedStatement
内の setBinaryStream
- 例外:
java.sql.SQLException
setUnicodeStream
public void setUnicodeStream(int parameterIndex,
java.io.InputStream x,
int length)
throws java.sql.SQLException
- 推奨されていません。
- 定義:
- インタフェース
java.sql.PreparedStatement
内の setUnicodeStream
- 例外:
java.sql.SQLException
- 関連項目:
PreparedStatement.setUnicodeStream(int, java.io.InputStream, int)
setCharacterStream
public void setCharacterStream(int parameterIndex,
java.io.Reader reader,
int length)
throws java.sql.SQLException
- 定義:
- インタフェース
java.sql.PreparedStatement
内の setCharacterStream
- 例外:
java.sql.SQLException
setObject
public void setObject(int parameterIndex,
java.lang.Object x)
throws java.sql.SQLException
- 定義:
- インタフェース
java.sql.PreparedStatement
内の setObject
- 例外:
java.sql.SQLException
setObject
public void setObject(int parameterIndex,
java.lang.Object x,
int targetSqlType)
throws java.sql.SQLException
- 定義:
- インタフェース
java.sql.PreparedStatement
内の setObject
- 例外:
java.sql.SQLException
setObject
public void setObject(int parameterIndex,
java.lang.Object x,
int targetSqlType,
int scale)
throws java.sql.SQLException
- 定義:
- インタフェース
java.sql.PreparedStatement
内の setObject
- 例外:
java.sql.SQLException
setNull
public void setNull(int paramIndex,
int sqlType,
java.lang.String typeName)
throws java.sql.SQLException
- 定義:
- インタフェース
java.sql.PreparedStatement
内の setNull
- 例外:
java.sql.SQLException
setString
public void setString(int parameterIndex,
java.lang.String x)
throws java.sql.SQLException
- 定義:
- インタフェース
java.sql.PreparedStatement
内の setString
- 例外:
java.sql.SQLException
setBigDecimal
public void setBigDecimal(int parameterIndex,
java.math.BigDecimal x)
throws java.sql.SQLException
- 定義:
- インタフェース
java.sql.PreparedStatement
内の setBigDecimal
- 例外:
java.sql.SQLException
setURL
public void setURL(int parameterIndex,
java.net.URL x)
throws java.sql.SQLException
- 定義:
- インタフェース
java.sql.PreparedStatement
内の setURL
- 例外:
java.sql.SQLException
setArray
public void setArray(int i,
java.sql.Array x)
throws java.sql.SQLException
- 定義:
- インタフェース
java.sql.PreparedStatement
内の setArray
- 例外:
java.sql.SQLException
setBlob
public void setBlob(int i,
java.sql.Blob x)
throws java.sql.SQLException
- 定義:
- インタフェース
java.sql.PreparedStatement
内の setBlob
- 例外:
java.sql.SQLException
setClob
public void setClob(int i,
java.sql.Clob x)
throws java.sql.SQLException
- 定義:
- インタフェース
java.sql.PreparedStatement
内の setClob
- 例外:
java.sql.SQLException
setDate
public void setDate(int parameterIndex,
java.sql.Date x)
throws java.sql.SQLException
- 定義:
- インタフェース
java.sql.PreparedStatement
内の setDate
- 例外:
java.sql.SQLException
getParameterMetaData
public java.sql.ParameterMetaData getParameterMetaData()
throws java.sql.SQLException
- 定義:
- インタフェース
java.sql.PreparedStatement
内の getParameterMetaData
- 例外:
java.sql.SQLException
setRef
public void setRef(int i,
java.sql.Ref x)
throws java.sql.SQLException
- 定義:
- インタフェース
java.sql.PreparedStatement
内の setRef
- 例外:
java.sql.SQLException
getMetaData
public java.sql.ResultSetMetaData getMetaData()
throws java.sql.SQLException
- 定義:
- インタフェース
java.sql.PreparedStatement
内の getMetaData
- 例外:
java.sql.SQLException
setTime
public void setTime(int parameterIndex,
java.sql.Time x)
throws java.sql.SQLException
- 定義:
- インタフェース
java.sql.PreparedStatement
内の setTime
- 例外:
java.sql.SQLException
setTimestamp
public void setTimestamp(int parameterIndex,
java.sql.Timestamp x)
throws java.sql.SQLException
- 定義:
- インタフェース
java.sql.PreparedStatement
内の setTimestamp
- 例外:
java.sql.SQLException
setDate
public void setDate(int parameterIndex,
java.sql.Date x,
java.util.Calendar cal)
throws java.sql.SQLException
- 定義:
- インタフェース
java.sql.PreparedStatement
内の setDate
- 例外:
java.sql.SQLException
setTime
public void setTime(int parameterIndex,
java.sql.Time x,
java.util.Calendar cal)
throws java.sql.SQLException
- 定義:
- インタフェース
java.sql.PreparedStatement
内の setTime
- 例外:
java.sql.SQLException
setTimestamp
public void setTimestamp(int parameterIndex,
java.sql.Timestamp x,
java.util.Calendar cal)
throws java.sql.SQLException
- 定義:
- インタフェース
java.sql.PreparedStatement
内の setTimestamp
- 例外:
java.sql.SQLException