libro
www.tuyano.com
初心者のためのSpring Framework入門

AOPの利用 (4/6)

作成:2015-07-12 13:25
更新:2015-07-12 13:25

■bean.xmlを作成する

次に行うことは、必要なBeanの設定を用意することです。まずは、Bean設定ファイルを使ってみることにしましょう。

先に「resources」フォルダ内に作成した「bean.xml」を開いてください。そして下のリスト欄のように記述をしましょう。これで必要なライブラリが揃います。

今回は、全部で3つのBeanを登録しています。それぞれ以下のような内容になりいます。

●SampleAopBean
先に作ったBeanですね。ここでは、id="sampleAopBean"と名前を指定して用意してあります。

●SampleMethodAdvice

先ほど作ったAOPの処理クラスです。これは、 id="sampleMethodAdvice"という名前で用意しておきます。

●ProxyFactoryBean
これが、ここでのポイントです。これは、org.springframework.aop.frameworkパッケージに用意されている、Spring AOPのクラスなのです。このように、ライブラリに用意されているクラスもBean設定ファイルによりインスタンスを自動作成できます。

このProxyFactoryBeanでは、<property>タグを使い、2つのプロパティを用意してあります。それぞれ以下のようなものです。

target――AOPの対象となるBeanを指定します。ここでは、sampleAopBean<bean id="sampleAopBean">で用意したもの)を指定しています。

interceptorNames――これはAOPで挿入する処理のBeanを指定します。複数を指定できるように、<list>というリストのタグを用意し、その中に<value>タグでBean名を指定します。ここでは、その手前で作ってあるsampleMethodAdviceを指定してあります。

このように、AOPのターゲットとなるBean、AOPの処理を行うBean、そしてこれらの関連をプロパティに設定したProxyFactoryBean、以上3つが必要となります。

※プログラムリストが表示されない場合

AddBlockなどの広告ブロックツールがONになっていると、プログラムリスト等が表示されない場合があります。これらのツールをOFFにしてみてください。

●プログラム・リスト●

<?xml version="1.0" encoding="UTF-8"?>
<beans 
    xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://www.springframework.org/schema/beans 
    http://www.springframework.org/schema/beans/spring-beans.xsd">
    
    <!-- aop bean... -->
    <bean id="sampleAopBean" class="com.tuyano.libro.aop.SampleAopBean">
        <property name="message" value="this is AOP bean!" />
    </bean>
    <bean id="sampleMethodAdvice" 
        class="com.tuyano.libro.aop.SampleMethodAdvice" />

    <bean id="proxyFactoryBean" 
            class="org.springframework.aop.framework.ProxyFactoryBean">
        <property name="target" ref="sampleAopBean"></property>
        <property name="interceptorNames">
            <list>
                <value>sampleMethodAdvice</value>
            </list>
        </property>
    </bean>
            
</beans>
※関連コンテンツ

「初心者のためのSpring Framework入門」に戻る