パッケージ org.springframework.jndi
クラス JndiTemplate
java.lang.ObjectSE
org.springframework.jndi.JndiTemplate
JNDI 操作を単純化するヘルパークラス。オブジェクトを検索およびバインドするメソッドを提供し、
JndiCallback
インターフェースの実装が、提供された JNDI ネーミングコンテキストで任意の操作を実行できるようにします。- 作成者:
- Rod Johnson, Juergen Hoeller
- 関連事項:
フィールドサマリー
コンストラクターのサマリー
コンストラクター説明新しい JndiTemplate インスタンスを作成します。JndiTemplate
(PropertiesSE environment) 指定された環境を使用して、新しい JndiTemplate インスタンスを作成します。メソッドのサマリー
修飾子と型メソッド説明void
指定された名前を使用して、指定されたオブジェクトを現在の JNDI コンテキストにバインドします。protected ContextSE
新しい JNDI 初期コンテキストを作成します。<T> T
execute
(JndiCallback<T> contextCallback) 指定された JNDI コンテキストコールバック実装を実行します。このテンプレートの構成に対応する JNDI コンテキストを取得します。JNDI InitialContext の環境があれば、それを返します。現在の JNDI コンテキストで指定された名前のオブジェクトを検索します。<T> T
現在の JNDI コンテキストで指定された名前のオブジェクトを検索します。void
指定された名前を使用して、指定されたオブジェクトを現在の JNDI コンテキストに再バインドします。void
releaseContext
(ContextSE ctx) getContext()
から取得した JNDI コンテキストを解放します。void
setEnvironment
(PropertiesSE environment) JNDI InitialContext の環境を設定します。void
現在の JNDI コンテキストから指定された名前のバインディングを削除します。
フィールドの詳細
logger
コンストラクターの詳細
JndiTemplate
public JndiTemplate()新しい JndiTemplate インスタンスを作成します。JndiTemplate
指定された環境を使用して、新しい JndiTemplate インスタンスを作成します。
メソッドの詳細
setEnvironment
JNDI InitialContext の環境を設定します。getEnvironment
JNDI InitialContext の環境があれば、それを返します。execute
指定された JNDI コンテキストコールバック実装を実行します。- パラメーター:
contextCallback
- 使用する JndiCallback 実装- 戻り値:
- コールバックによって返された結果オブジェクト、または
null
- 例外:
NamingExceptionSE
- コールバック実装によってスローされます- 関連事項:
getContext
このテンプレートの構成に対応する JNDI コンテキストを取得します。execute(org.springframework.jndi.JndiCallback<T>)
によって呼び出されます。直接呼び出すこともできます。デフォルトの実装は
createInitialContext()
に委譲します。- 戻り値:
- JNDI コンテキスト (非
null
) - 例外:
NamingExceptionSE
- コンテキストの取得に失敗した場合- 関連事項:
releaseContext
getContext()
から取得した JNDI コンテキストを解放します。- パラメーター:
ctx
- リリースする JNDI コンテキスト (null
の場合があります)- 関連事項:
createInitialContext
新しい JNDI 初期コンテキストを作成します。getContext()
によって呼び出されます。デフォルトの実装では、このテンプレートの環境設定を使用します。テストなどのカスタムコンテキスト用にサブクラス化できます。
- 戻り値:
- 初期コンテキストインスタンス
- 例外:
NamingExceptionSE
- 初期化エラーの場合
lookup
現在の JNDI コンテキストで指定された名前のオブジェクトを検索します。- パラメーター:
name
- オブジェクトの JNDI 名- 戻り値:
- オブジェクトが見つかりました (
null
にすることはできません。正常に動作しない JNDI 実装が null を返す場合、NamingException がスローされます) - 例外:
NamingExceptionSE
- JNDI にバインドされた特定の名前のオブジェクトがない場合
lookup
現在の JNDI コンテキストで指定された名前のオブジェクトを検索します。- パラメーター:
name
- オブジェクトの JNDI 名requiredType
- JNDI オブジェクトが一致する必要がある型。実際のクラスのインターフェースまたはスーパークラス、または一致する場合はnull
を指定できます。例: 値がObject.class
の場合、このメソッドは返されたインスタンスのクラスが何であっても成功します。- 戻り値:
- オブジェクトが見つかりました (
null
にすることはできません。正常に動作しない JNDI 実装が null を返す場合、NamingException がスローされます) - 例外:
NamingExceptionSE
- JNDI にバインドされた特定の名前のオブジェクトがない場合
bind
指定された名前を使用して、指定されたオブジェクトを現在の JNDI コンテキストにバインドします。- パラメーター:
name
- オブジェクトの JNDI 名object
- バインドするオブジェクト- 例外:
NamingExceptionSE
- JNDI によってスローされ、ほとんどの名前はすでにバインドされています
rebind
指定された名前を使用して、指定されたオブジェクトを現在の JNDI コンテキストに再バインドします。既存のバインディングを上書きします。- パラメーター:
name
- オブジェクトの JNDI 名object
- 再バインドするオブジェクト- 例外:
NamingExceptionSE
- JNDI によってスローされます
unbind
現在の JNDI コンテキストから指定された名前のバインディングを削除します。- パラメーター:
name
- オブジェクトの JNDI 名- 例外:
NamingExceptionSE
- JNDI によってスローされ、ほとんどの場合、名前が見つかりません