程序包 infra.aop.target

类 HotSwappableTargetSource

java.lang.Object
infra.aop.target.HotSwappableTargetSource
所有已实现的接口:
TargetClassAware, TargetSource, Serializable

public class HotSwappableTargetSource extends Object implements TargetSource, Serializable
TargetSource implementation that caches a local target object, but allows the target to be swapped while the application is running.

If configuring an object of this class in a IoC container, use constructor injection.

This TargetSource is serializable if the target is at the time of serialization.

从以下版本开始:
3.0
作者:
Rod Johnson, Juergen Hoeller, TODAY 2021/2/1 21:26
另请参阅:
  • 字段详细资料

    • serialVersionUID

      private static final long serialVersionUID
      另请参阅:
    • target

      private Object target
      The current target object.
  • 构造器详细资料

    • HotSwappableTargetSource

      public HotSwappableTargetSource(Object initialTarget)
      Create a new HotSwappableTargetSource with the given initial target object.
      参数:
      initialTarget - the initial target object
  • 方法详细资料

    • getTargetClass

      public Class<?> getTargetClass()
      Return the type of the current target object.

      The returned type should usually be constant across all target objects.

      指定者:
      getTargetClass 在接口中 TargetClassAware
      指定者:
      getTargetClass 在接口中 TargetSource
      返回:
      the type of targets returned by this TargetSource
    • isStatic

      public final boolean isStatic()
      从接口复制的说明: TargetSource
      Will all calls to TargetSource.getTarget() return the same object?

      In that case, there will be no need to invoke TargetSource.releaseTarget(Object), and the AOP framework can cache the return value of TargetSource.getTarget().

      The default implementation returns false.

      指定者:
      isStatic 在接口中 TargetSource
      返回:
      true if the target is immutable
      另请参阅:
    • getTarget

      public Object getTarget()
      从接口复制的说明: TargetSource
      Return a target instance. Invoked immediately before the AOP framework calls the "target" of an AOP method invocation.
      指定者:
      getTarget 在接口中 TargetSource
      返回:
      the target object which contains the join-point, or null if there is no actual target instance
    • swap

      public Object swap(Object newTarget)
      Swap the target, returning the old target object.
      参数:
      newTarget - the new target object
      返回:
      the old target object
      抛出:
      IllegalArgumentException - if the new target is invalid
    • equals

      public boolean equals(Object other)
      Two HotSwappableTargetSources are equal if the current target objects are equal.
      覆盖:
      equals 在类中 Object
    • hashCode

      public int hashCode()
      覆盖:
      hashCode 在类中 Object
    • toString

      public String toString()
      覆盖:
      toString 在类中 Object