Spring AOP-スタティックエージェント、ダイナミックエージェント

1832 ワード

title:Spring AOP-スタティックエージェント、ダイナミックエージェントdate:2019-07-31 15:07 tags:[Spring、JavaEE]
この論文では主に静的エージェントとダイナミックエージェントとSpring AOPアプリケーションを紹介します.
スタティックエージェント(jdk 1.5)
ターゲットとプロキシオブジェクトは同じインターフェースを実現し、プロキシオブジェクトは対象を参照します.
  • ターゲットオブジェクト
  • 添削調査方法(主要業務)
  • プロキシオブジェクト
  • は、対象となる方法(主要業務)だけでなく、他の方法(追加業務)
  • も可能である.
  • 安全検査
  • 権限チェック
  • ログ記録
  • パッキングタイプ-Asppect(主要業務に影響がない)
  • ターゲットに散在している横断的な懸念点を取り出してモジュール化する.
  • 安全検査
  • 権限チェック
  • ログ記録
  • ダイナミックエージェント
    ターゲットオブジェクトは一つのインターフェースを実現します.JVMは反射動的に代理オブジェクトを生成します.もう一つのクラスは実現します.
  • ターゲット
  • エージェントオブジェクト(反射によって目標オブジェクトと同じ数口が達成され、反射によって)
  • プライベートオブジェクト属性
  • により実現されるインターフェース方法
  • .
  • 切り口方法
  • Spring AOP
    ダイナミックエージェントによる方法
    AOP用語解釈
  • ターゲット-TargetObject
  • ターゲットに散在している横断的な懸念点を取り出してモジュール化する(MyAspect)
  • 標識方式
  • 注釈
  • spring構成
  • MyAspect(@Aspect注)
  • Adviceいつ実行するかをお知らせします.
  • before:
    @Before("allMethod")
    
  • after:
  • throw:
  • PointCut範囲を設定し、対象オブジェクトのどの方法に具体的に作用するかをJoinPointとの関係-インプラント(Weave)
    @Pointcut("execution(* add*(..)) || execution(*del*(..)))"
    void allMethod();
    
  • JoinPoint標識はただの概念ロジックです.