1スプリングは、2つの方法でBeanを管理します
原理:春は大規模なコレクションマップを通じてオブジェクトを管理するために、デフォルトの条件は、シングルトンがあります
フォーマット:地図<K、V>キー:ID / @Bean注釈メソッド名の豆
値:オブジェクトがインスタンス化された後、
要件:コンテナオブジェクトのキーの名前は、異なっている必要があります。
-1-ラベル管理Beanによって
< ビーンID = "" クラス= "com.tedu.controller.A" />
-2-豆注釈管理により、
@Bean パブリックA(){ 戻り 新しい)(Aと、 }
2- AOPの効果:ためには、デカップリングサービスコードを達成するための方法を展開します
セクション構造要素:セクション= +エントリポイント通知
AOPの形で問題を解決するためのトランザクション制御:
公共 ボイドsaveUser(ユーザーユーザー){ userMapper.insert(ユーザ); } 公共 ボイドupdateUser(ユーザーユーザー){ userMapper.update(ユーザ); }
@Component
@Aspect
パブリッククラスTxAspect {
/ *トランザクション/キャッシュ/例外処理してもよいですアドバイスの周り* / / * * /アドバイスの周りに、対象プロセスの実行を制御することが所望される場合 @Around( "実行(com.jt.service .. *(..))") の周りにパブリックオブジェクト(ProceedingJoinPointジョインポイント){ {トライ tx.begin(); joinPoint.proceed(); //特定の方法を実行する tx.commitを(); }キャッチ(){ Tx.rollback(); } }
ポイントカット表現:
ビーン(クラス)に応じ-1-豆のshRNA
-2-内(パッケージ名、クラス名)クラスインターセプトとして
-3-実行(パッケージ名戻り型クラス名。メソッド名(パラメータリスト))
-4- @ annotaion(パッケージ名。ノート名)