2

Coldspring 2.0でメソッドアドバイザの前後にいくつかを実装したいと思います。また、AOPの新しいスキーマと新しい自動プロキシ機能を使用したいと思います。残念ながら、AOPのイッカクのドキュメントは現在クリフハンガーです。AOPスキーマを使用するColdspring2.0構成ファイルの例を教えてもらえますか?

4

2 に答える 2

2

AOPドキュメントのもう1つのセクションを終了しましたが、それまでの間、ボールを転がすためのいくつかの例を示します。

これは、アドバイスを中心に設定する例です。これは、オブジェクトタイマーでメソッドtimeMethodを呼び出します。これは、のポイントカットに一致します。これは、次のように変換されます。基本的に、それはすべてに一致します。execution(public * *(..))

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.coldspringframework.org/schema/beans" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xmlns:aop="http://www.coldspringframework.org/schema/aop" 
    xsi:schemaLocation="http://www.coldspringframework.org/schema/beans http://coldspringframework.org/schema/coldspring-beans-2.0.xsd 
    http://www.coldspringframework.org/schema/aop http://www.coldspringframework.org/schema/coldspring-aop-2.0.xsd"
    >

<!-- AOP configuration -->  
<aop:config>
    <aop:aspect ref="timer">
        <aop:around method="timeMethod"
            pointcut="execution(public * *(..))"/>
    </aop:aspect>
</aop:config>


<bean name="timer" class="05_AOP.Timer" />
<bean name="longTime" class="05_AOP.LongTime" />

</beans>

注意すべき重要な点は、Time.cfcは単なる古いCFCですが、周りのアドバイスを行うには、使用されいるメソッドが次のようにMethodInvocationを引数として取る必要があるということです。

public any function timeMethod(required MethodInvocation invocation)
{
     ...
}

しかし、そこに行くと、CS2でAOPを使用する例があります。

MethodInterceptorsなども引き続き使用できますが、<aop:advisor>ではなくを使用します<aop:aspect>

しかし、全体として、私は現在CS2 AOPドキュメントに取り組んでいるので、翌日かそこらで記入されるはずです。

于 2011-05-13T14:59:20.993 に答える
1

DOCがリリースされました!http://sourceforge.net/apps/trac/coldspring/

于 2011-05-24T23:34:17.797 に答える