如果目标类方法同步,弹簧代理调用也会同步吗?

时间:2013-03-01 12:55:49

标签: java spring synchronization

我正在使用spring事务,我的一个服务类方法需要像下面一样进行同步。

package com.xyz.service;
class  XYZService{
  public  synchronized void methodA{
   }

  public  synchronized void methodB{
   }
}

我将spring txns应用于我的服务类,如下所示

<aop:config>
        <aop:advisor id="serviceTx" advice-ref="txAdvice" pointcut="execution(* *..service.*Manager.*(..)) order="0"/>
    </aop:config>

<tx:advice id="txAdvice" transaction-manager="transactionManager">
        <tx:attributes>
            <tx:method name="*"/>
        </tx:attributes>
    </tx:advice>

<bean id="xyzManager" class="com.xyz.service.XYZService">
           </bean>

所以当我在spring bean(xyzManager)上调用methodA或methodB时,它仍然是同步调用吗?请帮帮我..

1 个答案:

答案 0 :(得分:2)

快速回答是“是”。 Spring创建“容器”并且不触及方法的原始签名。