クラス AbstractLazyCreationTargetSource

java.lang.ObjectSE
org.springframework.aop.target.AbstractLazyCreationTargetSource
実装されたすべてのインターフェース:
TargetClassAwareTargetSource

public abstract class AbstractLazyCreationTargetSource extends ObjectSE implements TargetSource
ユーザー管理オブジェクトを遅延作成する TargetSource 実装。

レイジーターゲットオブジェクトの作成は、createObject() メソッドを実装することによってユーザーが制御します。この TargetSource は、プロキシに初めてアクセスしたときにこのメソッドを呼び出します。

オブジェクトへの依存関係への参照を渡す必要があるが、最初に使用するまで依存関係を実際に作成したくない場合に便利です。この典型的なシナリオは、リモートリソースへの接続です。

導入:
1.2.4
作成者:
Rob Harrop, Juergen Hoeller
関連事項:
  • フィールドサマリー

    フィールド
    修飾子と型
    フィールド
    説明
    protected final Log
    サブクラスで利用可能なロガー。
  • コンストラクターのサマリー

    コンストラクター
    コンストラクター
    説明
  • メソッドのサマリー

    修飾子と型
    メソッド
    説明
    protected abstract ObjectSE
    サブクラスは、このメソッドを実装して、遅延初期化オブジェクトを返す必要があります。
    レイジーで初期化されたターゲットオブジェクトを返し、まだ存在しない場合はオンザフライで作成します。
    このデフォルトの実装は、ターゲットが null (まだ初期化されていない)の場合は null を返し、ターゲットがすでに初期化されている場合はターゲットクラスを返します。
    boolean
    この TargetSource の遅延ターゲットオブジェクトがすでにフェッチされているかどうかを返します。

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

    clone, equalsSE, finalize, getClass, hashCode, notify, notifyAll, toString, wait, waitSE, waitSE

    インターフェース org.springframework.aop.TargetSource から継承されたメソッド

    isStatic, releaseTarget
  • フィールドの詳細

    • logger

      protected final Log logger
      サブクラスで利用可能なロガー。
  • コンストラクターの詳細

    • AbstractLazyCreationTargetSource

      public AbstractLazyCreationTargetSource()
  • メソッドの詳細

    • isInitialized

      public boolean isInitialized()
      この TargetSource の遅延ターゲットオブジェクトがすでにフェッチされているかどうかを返します。
    • getTargetClass

      @Nullable public ClassSE<?> getTargetClass()
      このデフォルトの実装は、ターゲットが null (まだ初期化されていない)の場合は null を返し、ターゲットがすでに初期化されている場合はターゲットクラスを返します。

      ターゲットがまだ null であるときに意味のある値を提供するために、サブクラスはこのメソッドをオーバーライドしたい場合があります。

      次で指定:
      インターフェース TargetClassAwaregetTargetClass 
      次で指定:
      インターフェース TargetSourcegetTargetClass 
      戻り値:
      この TargetSource によって返されるターゲットの型
      関連事項:
    • getTarget

      public ObjectSE getTarget() throws ExceptionSE
      レイジーで初期化されたターゲットオブジェクトを返し、まだ存在しない場合はオンザフライで作成します。
      次で指定:
      インターフェース TargetSourcegetTarget 
      戻り値:
      ジョインポイントを含むターゲットオブジェクト、または実際のターゲットインスタンスがない場合は null 
      例外:
      ExceptionSE - ターゲットオブジェクトを解決できない場合
      関連事項:
    • createObject

      protected abstract ObjectSE createObject() throws ExceptionSE
      サブクラスは、このメソッドを実装して、遅延初期化オブジェクトを返す必要があります。プロキシが初めて呼び出されたときに呼び出されます。
      戻り値:
      作成されたオブジェクト
      例外:
      ExceptionSE - 作成に失敗した場合