此线程相关的,我遇到一个问题, 这里就需要访问一个被通知对象的保护方法 。 我使用Spring 3.0.6,并创造了我申请使用JDK代理豆显著数量春分析方面。
然而,由于需要访问一个特定的bean受保护的方法,我想用CGLIB提供建议。 所有其他豆类我想继续使用JDK代理。
我使用的注释和XML配置的混合,但该特定的方面是在XML配置定义的。
我知道,有<aop:scoped-proxy>
标签,但是从我所知道的,适用于所有方面。
反正是有定义的单个方面使用CGLIB来代替?
<aop:config>
<aop:aspect id="Profiler" ref="lendingSimulationServiceProfilerInterceptor">
<!-- info -->
<aop:around method="infoProfiler"
pointcut="execution(* com.cws.cs.lendingsimulationservice.service.LendingSimulationServiceImpl.calculate*(..))" />
<!-- debug -->
<aop:around method="infoProfiler"
pointcut="execution(* com.cws.cs.lendingsimulationservice.process.LendingSimulationProcessImpl.calculate(..))" />
<aop:around method="infoProfiler"
pointcut="execution(* com.blaze.BlazeEngine.invokeService(..))" />
<!-- trace -->
<aop:around method="traceProfiler"
pointcut="execution(* com.calculator.dao.impl.LendingSimulationDaoImpl.*(..))" />
<!-- NEED TO DEFINE THIS PARTICULAR ASPECT AS CGLIB -->
<aop:around method="traceProfiler"
pointcut="execution(* com.cws.cs.lendingsimulationservice.util.pool.JAXBPoolImpl.*(..))" />
</aop:aspect>
</aop:config>
我试着配置一分为二,并为一个配置指定target-class="true"
,而另一个target-class="false"
,但它似乎CGLIB在这一点适用于所有。
有没有办法做到这一点?
谢谢,
埃里克