com.lavans.util.jdbc.cluster
クラス ClusterConnection

java.lang.Object
  上位を拡張 com.lavans.util.jdbc.cluster.ClusterConnection
すべての実装されたインタフェース:
java.sql.Connection

public class ClusterConnection
extends java.lang.Object
implements java.sql.Connection

クラスタ接続用Connectionクラス。 Connectionクラスに対して行う設定処理(setAutoCommit()等)は、 更新処理を行う前に実行しておくこと。DB切替が発生した際に、 AutoCommitがTrueの時に作成したStatementは再実行されない。 クラスタ接続ではセーブポイントの管理は行わない。


フィールドの概要
protected static Logger logger
          ロガー。
 
インタフェース java.sql.Connection から継承されたフィールド
TRANSACTION_NONE, TRANSACTION_READ_COMMITTED, TRANSACTION_READ_UNCOMMITTED, TRANSACTION_REPEATABLE_READ, TRANSACTION_SERIALIZABLE
 
コンストラクタの概要
ClusterConnection(java.sql.Connection con, ClusterConnectionPool pool)
          コンストラクタ。
 
メソッドの概要
 void clearWarnings()
           
 void close()
           
 void commit()
           
 java.sql.Statement createStatement()
           
 java.sql.Statement createStatement(int resultSetType, int resultSetConcurrency)
           
 java.sql.Statement createStatement(int resultSetType, int resultSetConcurrency, int resultSetHoldability)
          Holdability指定付きStatement生成。
 boolean getAutoCommit()
           
 java.lang.String getCatalog()
           
 int getHoldability()
           
 java.sql.DatabaseMetaData getMetaData()
          Oracle10gののojdbc14に合わせてsynchronizedにする。
 int getTransactionIsolation()
           
 java.util.Map getTypeMap()
           
 java.sql.SQLWarning getWarnings()
           
 void init()
          過去の実行履歴のクリア処理。
 boolean isClosed()
           
 boolean isReadOnly()
           
 java.lang.String nativeSQL(java.lang.String sql)
           
 void notifyError(ClusterStatement src)
          接続先切替。
 java.sql.CallableStatement prepareCall(java.lang.String sql)
           
 java.sql.CallableStatement prepareCall(java.lang.String sql, int resultSetType, int resultSetConcurrency)
           
 java.sql.CallableStatement prepareCall(java.lang.String sql, int resultSetType, int resultSetConcurrency, int resultSetHoldability)
           
 java.sql.PreparedStatement prepareStatement(java.lang.String sql)
           
 java.sql.PreparedStatement prepareStatement(java.lang.String sql, int autoGeneratedKeys)
           
 java.sql.PreparedStatement prepareStatement(java.lang.String sql, int[] columnIndexes)
           
 java.sql.PreparedStatement prepareStatement(java.lang.String sql, int resultSetType, int resultSetConcurrency)
           
 java.sql.PreparedStatement prepareStatement(java.lang.String sql, int resultSetType, int resultSetConcurrency, int resultSetHoldability)
           
 java.sql.PreparedStatement prepareStatement(java.lang.String sql, java.lang.String[] columnNames)
           
 void releaseSavepoint(java.sql.Savepoint savepoint)
          セーブポイント破棄。
 void remove(java.sql.Statement st)
          再実行キューからの取り外し。
 void rollback()
           
 void rollback(java.sql.Savepoint savepoint)
          指定のセーブポイントまでのロールバック。
 void setAutoCommit(boolean autoCommit)
           
 void setCatalog(java.lang.String setCatalog)
           
 void setHoldability(int holdability)
           
 void setReadOnly(boolean readOnly)
           
 java.sql.Savepoint setSavepoint()
          名前無しセーブポイントの作成。
 java.sql.Savepoint setSavepoint(java.lang.String name)
          名前無しセーブポイントの作成。
 void setTransactionIsolation(int level)
           
 void setTypeMap(java.util.Map map)
           
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

フィールドの詳細

logger

protected static Logger logger
ロガー。debug用。

コンストラクタの詳細

ClusterConnection

public ClusterConnection(java.sql.Connection con,
                         ClusterConnectionPool pool)
コンストラクタ。

メソッドの詳細

init

public void init()
過去の実行履歴のクリア処理。 ClusterConnectionPoolから取得するときに呼ばれる。


remove

public void remove(java.sql.Statement st)
再実行キューからの取り外し。 Statement#close()でこれを呼ぶ必要がある。


notifyError

public void notifyError(ClusterStatement src)
                 throws java.sql.SQLException
接続先切替。 ClusterStatementから呼ばれる。エラーを通知してきたStatementに対しては autoCommitの状態にかかわらずネイティブなStatementを返す。 保存してあるすべてのStatementに対して、過去に実行した sqlを再実行する。

例外:
java.sql.SQLException

createStatement

public java.sql.Statement createStatement()
                                   throws java.sql.SQLException
定義:
インタフェース java.sql.Connection 内の createStatement
例外:
java.sql.SQLException
関連項目:
Connection.createStatement()

createStatement

public java.sql.Statement createStatement(int resultSetType,
                                          int resultSetConcurrency)
                                   throws java.sql.SQLException
定義:
インタフェース java.sql.Connection 内の createStatement
例外:
java.sql.SQLException
関連項目:
Connection.createStatement(int, int)

createStatement

public java.sql.Statement createStatement(int resultSetType,
                                          int resultSetConcurrency,
                                          int resultSetHoldability)
                                   throws java.sql.SQLException
Holdability指定付きStatement生成。 ただしOracleは無条件で例外をスローする。

定義:
インタフェース java.sql.Connection 内の createStatement
例外:
java.sql.SQLException
関連項目:
Connection.createStatement(int, int, int)

prepareCall

public java.sql.CallableStatement prepareCall(java.lang.String sql)
                                       throws java.sql.SQLException
定義:
インタフェース java.sql.Connection 内の prepareCall
例外:
java.sql.SQLException
関連項目:
Connection.prepareCall(java.lang.String)

prepareCall

public java.sql.CallableStatement prepareCall(java.lang.String sql,
                                              int resultSetType,
                                              int resultSetConcurrency)
                                       throws java.sql.SQLException
定義:
インタフェース java.sql.Connection 内の prepareCall
例外:
java.sql.SQLException
関連項目:
Connection.prepareCall(java.lang.String, int, int)

prepareCall

public java.sql.CallableStatement prepareCall(java.lang.String sql,
                                              int resultSetType,
                                              int resultSetConcurrency,
                                              int resultSetHoldability)
                                       throws java.sql.SQLException
定義:
インタフェース java.sql.Connection 内の prepareCall
例外:
java.sql.SQLException
関連項目:
Connection.prepareCall(java.lang.String, int, int, int)

prepareStatement

public java.sql.PreparedStatement prepareStatement(java.lang.String sql)
                                            throws java.sql.SQLException
定義:
インタフェース java.sql.Connection 内の prepareStatement
例外:
java.sql.SQLException
関連項目:
Connection.prepareStatement(java.lang.String)

prepareStatement

public java.sql.PreparedStatement prepareStatement(java.lang.String sql,
                                                   int autoGeneratedKeys)
                                            throws java.sql.SQLException
定義:
インタフェース java.sql.Connection 内の prepareStatement
例外:
java.sql.SQLException
関連項目:
Connection.prepareStatement(java.lang.String, int)

prepareStatement

public java.sql.PreparedStatement prepareStatement(java.lang.String sql,
                                                   int resultSetType,
                                                   int resultSetConcurrency)
                                            throws java.sql.SQLException
定義:
インタフェース java.sql.Connection 内の prepareStatement
例外:
java.sql.SQLException
関連項目:
Connection.prepareStatement(java.lang.String, int, int)

prepareStatement

public java.sql.PreparedStatement prepareStatement(java.lang.String sql,
                                                   int resultSetType,
                                                   int resultSetConcurrency,
                                                   int resultSetHoldability)
                                            throws java.sql.SQLException
定義:
インタフェース java.sql.Connection 内の prepareStatement
例外:
java.sql.SQLException
関連項目:
Connection.prepareStatement(java.lang.String, int, int, int)

prepareStatement

public java.sql.PreparedStatement prepareStatement(java.lang.String sql,
                                                   int[] columnIndexes)
                                            throws java.sql.SQLException
定義:
インタフェース java.sql.Connection 内の prepareStatement
例外:
java.sql.SQLException
関連項目:
Connection.prepareStatement(java.lang.String, int[])

prepareStatement

public java.sql.PreparedStatement prepareStatement(java.lang.String sql,
                                                   java.lang.String[] columnNames)
                                            throws java.sql.SQLException
定義:
インタフェース java.sql.Connection 内の prepareStatement
例外:
java.sql.SQLException
関連項目:
Connection.prepareStatement(java.lang.String, java.lang.String[])

getHoldability

public int getHoldability()
                   throws java.sql.SQLException
定義:
インタフェース java.sql.Connection 内の getHoldability
例外:
java.sql.SQLException

getTransactionIsolation

public int getTransactionIsolation()
                            throws java.sql.SQLException
定義:
インタフェース java.sql.Connection 内の getTransactionIsolation
例外:
java.sql.SQLException

clearWarnings

public void clearWarnings()
                   throws java.sql.SQLException
定義:
インタフェース java.sql.Connection 内の clearWarnings
例外:
java.sql.SQLException

close

public void close()
           throws java.sql.SQLException
定義:
インタフェース java.sql.Connection 内の close
例外:
java.sql.SQLException

commit

public void commit()
            throws java.sql.SQLException
定義:
インタフェース java.sql.Connection 内の commit
例外:
java.sql.SQLException

rollback

public void rollback()
              throws java.sql.SQLException
定義:
インタフェース java.sql.Connection 内の rollback
例外:
java.sql.SQLException

getAutoCommit

public boolean getAutoCommit()
                      throws java.sql.SQLException
定義:
インタフェース java.sql.Connection 内の getAutoCommit
例外:
java.sql.SQLException

isClosed

public boolean isClosed()
                 throws java.sql.SQLException
定義:
インタフェース java.sql.Connection 内の isClosed
例外:
java.sql.SQLException

isReadOnly

public boolean isReadOnly()
                   throws java.sql.SQLException
定義:
インタフェース java.sql.Connection 内の isReadOnly
例外:
java.sql.SQLException

setHoldability

public void setHoldability(int holdability)
                    throws java.sql.SQLException
定義:
インタフェース java.sql.Connection 内の setHoldability
例外:
java.sql.SQLException

setTransactionIsolation

public void setTransactionIsolation(int level)
                             throws java.sql.SQLException
定義:
インタフェース java.sql.Connection 内の setTransactionIsolation
例外:
java.sql.SQLException

setAutoCommit

public void setAutoCommit(boolean autoCommit)
                   throws java.sql.SQLException
定義:
インタフェース java.sql.Connection 内の setAutoCommit
例外:
java.sql.SQLException

setReadOnly

public void setReadOnly(boolean readOnly)
                 throws java.sql.SQLException
定義:
インタフェース java.sql.Connection 内の setReadOnly
例外:
java.sql.SQLException

getCatalog

public java.lang.String getCatalog()
                            throws java.sql.SQLException
定義:
インタフェース java.sql.Connection 内の getCatalog
例外:
java.sql.SQLException

setCatalog

public void setCatalog(java.lang.String setCatalog)
                throws java.sql.SQLException
定義:
インタフェース java.sql.Connection 内の setCatalog
例外:
java.sql.SQLException

getMetaData

public java.sql.DatabaseMetaData getMetaData()
                                      throws java.sql.SQLException
Oracle10gののojdbc14に合わせてsynchronizedにする。

定義:
インタフェース java.sql.Connection 内の getMetaData
例外:
java.sql.SQLException
関連項目:
Connection.getMetaData()

getWarnings

public java.sql.SQLWarning getWarnings()
                                throws java.sql.SQLException
定義:
インタフェース java.sql.Connection 内の getWarnings
例外:
java.sql.SQLException

setSavepoint

public java.sql.Savepoint setSavepoint()
                                throws java.sql.SQLException
名前無しセーブポイントの作成。 クラスタ接続ではセーブポイントの管理は行わない。 /* (非 Javadoc)

定義:
インタフェース java.sql.Connection 内の setSavepoint
例外:
java.sql.SQLException
関連項目:
Connection.setSavepoint()

releaseSavepoint

public void releaseSavepoint(java.sql.Savepoint savepoint)
                      throws java.sql.SQLException
セーブポイント破棄。 クラスタ接続ではセーブポイントの管理は行わない。

定義:
インタフェース java.sql.Connection 内の releaseSavepoint
例外:
java.sql.SQLException
関連項目:
Connection.releaseSavepoint(java.sql.Savepoint)

rollback

public void rollback(java.sql.Savepoint savepoint)
              throws java.sql.SQLException
指定のセーブポイントまでのロールバック。 クラスタ接続ではセーブポイントの管理は行わない。

定義:
インタフェース java.sql.Connection 内の rollback
例外:
java.sql.SQLException
関連項目:
Connection.rollback(java.sql.Savepoint)

getTypeMap

public java.util.Map getTypeMap()
                         throws java.sql.SQLException
定義:
インタフェース java.sql.Connection 内の getTypeMap
例外:
java.sql.SQLException

setTypeMap

public void setTypeMap(java.util.Map map)
                throws java.sql.SQLException
定義:
インタフェース java.sql.Connection 内の setTypeMap
例外:
java.sql.SQLException

nativeSQL

public java.lang.String nativeSQL(java.lang.String sql)
                           throws java.sql.SQLException
定義:
インタフェース java.sql.Connection 内の nativeSQL
例外:
java.sql.SQLException

setSavepoint

public java.sql.Savepoint setSavepoint(java.lang.String name)
                                throws java.sql.SQLException
名前無しセーブポイントの作成。 クラスタ接続ではセーブポイントの管理は行わない。

定義:
インタフェース java.sql.Connection 内の setSavepoint
例外:
java.sql.SQLException
関連項目:
Connection.setSavepoint(java.lang.String)