下位互換性を保ち、冗長性を減らすために、インターフェイスの抽象クラスがあります。
abstract class EventHandlerAdapter implements EventHandler;
class ImplClass extends EventHandlerAdapter;
class Impl2Class extends EventHandlerAdapter;
抽象クラスからのみ継承する impl クラスのトランザクションの AOP 設定があります。
<aop:config proxy-target-class="true">
<aop:pointcut id="EventTXOperation" expression="execution(* EventHandlerAdapter.*(..))"/>
<aop:advisor advice-ref="txAdvice" pointcut-ref="EventTXOperation"/>
</aop:config>
Impl2Class で ImplClass を参照しようとすると、proxy-target-class="true" を指定しても、Spring は常に独自のインターフェイス EventHandler を使用するようで、抽象クラスまたは具象 impl にキャストできません。これはproxy-target-classを使用したSpring AOPの通常の動作ですか? Advisor クラスを使用して自動プロキシ Bean のターゲット クラスを取得するために深く掘り下げることができることがわかりましたが、それは侵襲的であるようです。では、どのようなより良いオプションを使用できますか?