クラス UserCredentialsDataSourceAdapter
java.lang.ObjectSE
org.springframework.jdbc.datasource.DelegatingDataSource
org.springframework.jdbc.datasource.UserCredentialsDataSourceAdapter
- 実装されたすべてのインターフェース:
WrapperSE
、CommonDataSourceSE
、DataSourceSE
、InitializingBean
- 既知の直属サブクラス
IsolationLevelDataSourceAdapter
ターゲット JDBC
DataSource
SE のアダプター。指定されたユーザー資格情報をすべての標準 getConnection()
呼び出しに適用し、ターゲットで getConnection(username, password)
を暗黙的に呼び出します。他のすべてのメソッドは、ターゲット DataSource の対応するメソッドに委譲するだけです。 ユーザー資格情報が構成されていないターゲット JNDI DataSource をプロキシするために使用できます。クライアントコードは、標準の getConnection()
呼び出しを使用して、通常どおりこの DataSource で機能します。
次の例では、クライアントコードは、事前構成された "myDataSource" を透過的に操作し、指定されたユーザー資格情報を使用して "myTargetDataSource" に暗黙的にアクセスできます。
<bean id="myTargetDataSource" class="org.springframework.jndi.JndiObjectFactoryBean"> <property name="jndiName" value="java:comp/env/jdbc/myds"/> </bean> <bean id="myDataSource" class="org.springframework.jdbc.datasource.UserCredentialsDataSourceAdapter"> <property name="targetDataSource" ref="myTargetDataSource"/> <property name="username" value="myusername"/> <property name="password" value="mypassword"/> </bean>
"username" が空の場合、このプロキシはターゲット DataSource の標準 getConnection()
メソッドに委譲するだけです。これは、特定のターゲット DataSource で必要な場合に、ユーザー資格情報を暗黙的に渡すオプションだけのために、UserCredentialsDataSourceAdapter Bean 定義を保持するために使用できます。
- 導入:
- 1.0.2
- 作成者:
- Juergen Hoeller
- 関連事項:
コンストラクターのサマリー
コンストラクターメソッドのサマリー
修飾子と型メソッド説明protected ConnectionSE
doGetConnection
(StringSE username, StringSE password) この実装は、ターゲット DataSource のgetConnection(username, password)
メソッドに委譲し、指定されたユーザー資格情報を渡します。現在スレッドにバインドされた資格情報があるかどうかを確認し、可能な場合はそれらを使用して、静的に指定されたユーザー名とパスワード(つまりgetConnection
(StringSE username, StringSE password) 指定されたユーザー資格情報をそのままにして、doGetConnection(String, String)
に委譲するだけです。void
現在のスレッドからこのプロキシのユーザー資格情報を削除します。void
setCatalog
(StringSE catalog) 取得した各接続に適用するデータベースカタログを指定します。void
setCredentialsForCurrentThread
(StringSE username, StringSE password) このプロキシと現在のスレッドのユーザー資格情報を設定します。void
setPassword
(StringSE password) このアダプターが接続の取得に使用するデフォルトのユーザーのパスワードを設定します。void
取得した各接続に適用するデータベーススキーマを指定します。void
setUsername
(StringSE username) このアダプターが接続の取得に使用するデフォルトのユーザー名を設定します。クラス org.springframework.jdbc.datasource.DelegatingDataSource から継承されたメソッド
afterPropertiesSet, getLoginTimeout, getLogWriter, getParentLogger, getTargetDataSource, isWrapperFor, obtainTargetDataSource, setLoginTimeout, setLogWriter, setTargetDataSource, unwrap
クラス java.lang.ObjectSE から継承されたメソッド
clone, equalsSE, finalize, getClass, hashCode, notify, notifyAll, toString, wait, waitSE, waitSE
インターフェース javax.sql.CommonDataSourceSE から継承されたメソッド
createShardingKeyBuilder
インターフェース javax.sql.DataSourceSE から継承されたメソッド
createConnectionBuilder
コンストラクターの詳細
UserCredentialsDataSourceAdapter
public UserCredentialsDataSourceAdapter()
メソッドの詳細
setUsername
このアダプターが接続の取得に使用するデフォルトのユーザー名を設定します。デフォルトは特定のユーザーではありません。明示的に指定されたユーザー名は、常に DataSource レベルで指定されたユーザー名 / パスワードを上書きすることに注意してください。
setPassword
このアダプターが接続の取得に使用するデフォルトのユーザーのパスワードを設定します。デフォルトは特定のパスワードではありません。明示的に指定されたユーザー名は、常に DataSource レベルで指定されたユーザー名 / パスワードを上書きすることに注意してください。
setCatalog
取得した各接続に適用するデータベースカタログを指定します。- 導入:
- 4.3.2
- 関連事項:
setSchema
取得した各接続に適用するデータベーススキーマを指定します。- 導入:
- 4.3.2
- 関連事項:
setCredentialsForCurrentThread
このプロキシと現在のスレッドのユーザー資格情報を設定します。指定されたユーザー名とパスワードは、この DataSource プロキシでの後続のすべてのgetConnection()
呼び出しに適用されます。これにより、静的に指定されたユーザー資格情報、つまり "username" および "password" Bean プロパティの値が上書きされます。
- パラメーター:
username
- 適用するユーザー名password
- 適用するパスワード- 関連事項:
removeCredentialsFromCurrentThread
public void removeCredentialsFromCurrentThread()現在のスレッドからこのプロキシのユーザー資格情報を削除します。静的に指定されたユーザー資格情報は、その後再び適用されます。getConnection
現在スレッドにバインドされた資格情報があるかどうかを確認し、可能な場合はそれらを使用して、静的に指定されたユーザー名とパスワード(つまり、Bean プロパティの値)にフォールバックします。決定された資格情報をパラメーターとして
doGetConnection(String, String)
に委譲します。- 次で指定:
- インターフェース
DataSourceSE
のgetConnection
- オーバーライド:
- クラス
DelegatingDataSource
のgetConnection
- 例外:
SQLExceptionSE
- 関連事項:
getConnection
指定されたユーザー資格情報をそのままにして、doGetConnection(String, String)
に委譲するだけです。- 次で指定:
- インターフェース
DataSourceSE
のgetConnectionSE
- オーバーライド:
- クラス
DelegatingDataSource
のgetConnection
- 例外:
SQLExceptionSE
doGetConnection
protected ConnectionSE doGetConnection(@Nullable StringSE username, @Nullable StringSE password) throws SQLExceptionSE この実装は、ターゲット DataSource のgetConnection(username, password)
メソッドに委譲し、指定されたユーザー資格情報を渡します。指定されたユーザー名が空の場合、ターゲット DataSource の標準getConnection()
メソッドに委譲するだけです。- パラメーター:
username
- 使用するユーザー名password
- 使用するパスワード- 戻り値:
- 接続
- 例外:
SQLExceptionSE
- 関連事項: