したがって、クラス C にインターフェイス B を実装させ、インターフェイス B にインターフェイス A を拡張させます。
私の aop-config.xml:
<tx:advice id="txAdvice" transaction-manager="transactionManager">
<tx:attributes>
<tx:method name="*"/>
</tx:attributes>
</tx:advice>
<aop:config>
<aop:pointcut id="aMethods" expression="execution(* com.mypackage.A.*(..))"/>
<aop:advisor advice-ref="txAdvice" pointcut-ref="aMethods"/>
</aop:config>
基本的に、インターフェイス A を実装するすべてのクラスのメソッドをトランザクション コンテキストで実行する必要があります。
ポイントカット式がインターフェイス A を指している場合は機能しないようですが、インターフェイス B を指している場合は機能します。
それについて何か考えはありますか?