4

Spring構成ファイルで次のような表現を使用しています。

<aop:pointcut expression="within(my.app.dao.impl.*)" id="commonDaoOperation"/>
or
<aop:pointcut expression=" execution(public * my.app.dao.impl.*.*(..))" id="commonDaoOperation"/>

私が照合しようとしているクラス(この場合はDAO)は、別のパッケージにある共通クラスを拡張します。

上記のポイントカット式も、私のクラスの親クラスのメソッドと一致するはずですか?

または、メソッドを一致させるために、式に親クラスを明示的に追加する必要がありますか?

|| within(my.app.dao.common.MyParentClass)

ありがとう、

4

1 に答える 1

1

さらに調査した後、親クラスをポイントカット式に追加する必要があることを確認できます(親メソッドが子クラスでオーバーライドされていない場合)。

<aop:pointcut expression="within(my.app.dao.impl.*) || within(my.app.dao.common.MyParentClass)" id="commonDaoOperation"/>

于 2013-01-10T15:02:18.440 に答える