パッケージ org.springframework.jndi

クラス JndiTemplate

java.lang.ObjectSE
org.springframework.jndi.JndiTemplate

public class JndiTemplate extends ObjectSE
JNDI 操作を単純化するヘルパークラス。オブジェクトを検索およびバインドするメソッドを提供し、JndiCallback インターフェースの実装が、提供された JNDI ネーミングコンテキストで任意の操作を実行できるようにします。
作成者:
Rod Johnson, Juergen Hoeller
関連事項:
  • フィールドサマリー

    フィールド
    修飾子と型
    フィールド
    説明
    protected final Log
  • コンストラクターのサマリー

    コンストラクター
    コンストラクター
    説明
    新しい JndiTemplate インスタンスを作成します。
    指定された環境を使用して、新しい JndiTemplate インスタンスを作成します。
  • メソッドのサマリー

    修飾子と型
    メソッド
    説明
    void
    bind(StringSE name, ObjectSE object)
    指定された名前を使用して、指定されたオブジェクトを現在の JNDI コンテキストにバインドします。
    protected ContextSE
    新しい JNDI 初期コンテキストを作成します。
    <T> T
    execute(JndiCallback<T> contextCallback)
    指定された JNDI コンテキストコールバック実装を実行します。
    このテンプレートの構成に対応する JNDI コンテキストを取得します。
    JNDI InitialContext の環境があれば、それを返します。
    現在の JNDI コンテキストで指定された名前のオブジェクトを検索します。
    <T> T
    lookup(StringSE name, ClassSE<T> requiredType)
    現在の JNDI コンテキストで指定された名前のオブジェクトを検索します。
    void
    rebind(StringSE name, ObjectSE object)
    指定された名前を使用して、指定されたオブジェクトを現在の JNDI コンテキストに再バインドします。
    void
    getContext() から取得した JNDI コンテキストを解放します。
    void
    JNDI InitialContext の環境を設定します。
    void
    現在の JNDI コンテキストから指定された名前のバインディングを削除します。

    クラス java.lang.ObjectSE から継承されたメソッド

    clone, equalsSE, finalize, getClass, hashCode, notify, notifyAll, toString, wait, waitSE, waitSE
  • フィールドの詳細

    • logger

      protected final Log logger
  • コンストラクターの詳細

    • JndiTemplate

      public JndiTemplate()
      新しい JndiTemplate インスタンスを作成します。
    • JndiTemplate

      public JndiTemplate(@Nullable PropertiesSE environment)
      指定された環境を使用して、新しい JndiTemplate インスタンスを作成します。
  • メソッドの詳細

    • setEnvironment

      public void setEnvironment(@Nullable PropertiesSE environment)
      JNDI InitialContext の環境を設定します。
    • getEnvironment

      @Nullable public PropertiesSE getEnvironment()
      JNDI InitialContext の環境があれば、それを返します。
    • execute

      @Nullable public <T> T execute(JndiCallback<T> contextCallback) throws NamingExceptionSE
      指定された JNDI コンテキストコールバック実装を実行します。
      パラメーター:
      contextCallback - 使用する JndiCallback 実装
      戻り値:
      コールバックによって返された結果オブジェクト、または null
      例外:
      NamingExceptionSE - コールバック実装によってスローされます
      関連事項:
    • getContext

      public ContextSE getContext() throws NamingExceptionSE
      このテンプレートの構成に対応する JNDI コンテキストを取得します。execute(org.springframework.jndi.JndiCallback<T>) によって呼び出されます。直接呼び出すこともできます。

      デフォルトの実装は createInitialContext() に委譲します。

      戻り値:
      JNDI コンテキスト (非 null)
      例外:
      NamingExceptionSE - コンテキストの取得に失敗した場合
      関連事項:
    • releaseContext

      public void releaseContext(@Nullable ContextSE ctx)
      getContext() から取得した JNDI コンテキストを解放します。
      パラメーター:
      ctx - リリースする JNDI コンテキスト (null の場合があります)
      関連事項:
    • createInitialContext

      protected ContextSE createInitialContext() throws NamingExceptionSE
      新しい JNDI 初期コンテキストを作成します。getContext() によって呼び出されます。

      デフォルトの実装では、このテンプレートの環境設定を使用します。テストなどのカスタムコンテキスト用にサブクラス化できます。

      戻り値:
      初期コンテキストインスタンス
      例外:
      NamingExceptionSE - 初期化エラーの場合
    • lookup

      public ObjectSE lookup(StringSE name) throws NamingExceptionSE
      現在の JNDI コンテキストで指定された名前のオブジェクトを検索します。
      パラメーター:
      name - オブジェクトの JNDI 名
      戻り値:
      オブジェクトが見つかりました (null にすることはできません。正常に動作しない JNDI 実装が null を返す場合、NamingException がスローされます)
      例外:
      NamingExceptionSE - JNDI にバインドされた特定の名前のオブジェクトがない場合
    • lookup

      public <T> T lookup(StringSE name, @Nullable ClassSE<T> requiredType) throws NamingExceptionSE
      現在の JNDI コンテキストで指定された名前のオブジェクトを検索します。
      パラメーター:
      name - オブジェクトの JNDI 名
      requiredType - JNDI オブジェクトが一致する必要がある型。実際のクラスのインターフェースまたはスーパークラス、または一致する場合は null を指定できます。例: 値が Object.class の場合、このメソッドは返されたインスタンスのクラスが何であっても成功します。
      戻り値:
      オブジェクトが見つかりました (null にすることはできません。正常に動作しない JNDI 実装が null を返す場合、NamingException がスローされます)
      例外:
      NamingExceptionSE - JNDI にバインドされた特定の名前のオブジェクトがない場合
    • bind

      public void bind(StringSE name, ObjectSE object) throws NamingExceptionSE
      指定された名前を使用して、指定されたオブジェクトを現在の JNDI コンテキストにバインドします。
      パラメーター:
      name - オブジェクトの JNDI 名
      object - バインドするオブジェクト
      例外:
      NamingExceptionSE - JNDI によってスローされ、ほとんどの名前はすでにバインドされています
    • rebind

      public void rebind(StringSE name, ObjectSE object) throws NamingExceptionSE
      指定された名前を使用して、指定されたオブジェクトを現在の JNDI コンテキストに再バインドします。既存のバインディングを上書きします。
      パラメーター:
      name - オブジェクトの JNDI 名
      object - 再バインドするオブジェクト
      例外:
      NamingExceptionSE - JNDI によってスローされます
    • unbind

      public void unbind(StringSE name) throws NamingExceptionSE
      現在の JNDI コンテキストから指定された名前のバインディングを削除します。
      パラメーター:
      name - オブジェクトの JNDI 名
      例外:
      NamingExceptionSE - JNDI によってスローされ、ほとんどの場合、名前が見つかりません