春AOPと構成で
AOP(アスペクト指向プログラミング)、すなわち:アスペクト指向プログラミング、動的プロキシの
利点は:、コードの重複を低減、メンテナンスが容易開発効率を提供する
AOP関連規約:
ジョインポイント(接続点):スプリングフィンガー、これらのインターセプトポイントを指しこの方法は、接続点のために春がサポートする唯一の方法のタイプである
ポイントカット(エントリポイント):私たちはジョインポイント傍受定義したいものです
アドバイス(通知/機能強化を):行うにはインターセプトジョインポイントの事を通知することになった後です。
通知の種類:通知フロント、リア通知、異常通知、最終通知、通知サラウンド
導入(導入)は:前提にコードを変更することなく、特別な通知され、実行時に動的にいくつかのクラスを追加することができますメソッドまたはフィールド、
目標(ターゲットオーディエンス):プロキシターゲットオブジェクト
製織(製織):増強を指すが、コンパイル時織りを使用して、新しいプロキシオブジェクト、ばね動的織り、およびAspectJの作成のプロセスにターゲット・オブジェクトに適用されクラスローディング製織
プロキシ(エージェント):AOP強化クラスに織り込まれた後、得られたプロキシクラスを生成する
態様(セクション):エントリポイントと通知(導入)を結合
春AOPのXMLベースの構成:
1.また、ばね管理Beanへの通知
2. AOPは:設定タグは、開始AOP構成を示して
3 AOPを:アスペクトタグは、構成セクションことを示す
id属性は、固有の識別を提供するために切断された
ref属性は、BeanクラスIDの通知を指定する
4。 AOPで:構成された通知は、内部アスペクトタグ使用してタグの種類に対応する
前に:構成を示す事前通知AOP
メソッド属性を指定:ロガークラス事前通知である
ポイントカット表現ポイントカット属性を指定し、その方法は、ビジネス層を強化することを指摘した
:ポイントカット表現の書き込み
キーワード:実行(式)
式を:アクセス修飾子が値パッケージ名パッケージ名を返す...クラスのメソッド名(パラメータリスト)の名前。
標準文言:
public void com.ycl.servicer.impl.AccountServicer.saveAccount()
戻り値は、任意の戻り値を表し、ワイルドカードを使用することができます
* com.ycl.servicer.impl.AccountServicer.saveAccount()
パッケージ名は、ワイルドカードを使用することができ、それは任意のパッケージを表しますが、いくつかのパッケージを作成するためにいくつかのレベルがあります
* *.*.*.*AccountServicer.saveAccount()
あなたは、パッケージ名とその子を使用することができます...現在のパッケージを表し
* *..AccountServicer.saveAccount()
クラスやメソッド名には、ワイルドカードを達成するために使用することができます*
* *..*.*()
パラメータリスト:
の種類に直接データを書き込むことができます
直接書き込み名前の基本的なタイプ:int型
の方法のパッケージ名を書くために、クラスの参照型名:. java.lang.Stringでは、
ワイルドカードを使用することができますがいずれかのタイプを表すが、パラメーター持っている必要があります
あなたが使用することができますが...パラメータがあるかどうかを示しますすることができ
、すべての文言を渡します。
execution(* *..*.*(..))
通常の文言の実際の開発でポイントカット表現:
切到业务层实现类下的所有方法:* com.ycl.service.impl.*.*(..)