Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如果同步了目标类方法,spring代理调用是否也同步?_Java_Spring_Synchronization - Fatal编程技术网

Java 如果同步了目标类方法,spring代理调用是否也同步?

Java 如果同步了目标类方法,spring代理调用是否也同步?,java,spring,synchronization,Java,Spring,Synchronization,我使用的是spring事务,我的一个服务类方法需要同步,如下所示 package com.xyz.service; class XYZService{ public synchronized void methodA{ } public synchronized void methodB{ } } 我将spring TXN应用于我的服务类,如下所示 <aop:config> <aop:advisor id="serviceTx" a

我使用的是spring事务,我的一个服务类方法需要同步,如下所示

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

  public  synchronized void methodB{
   }
}
我将spring TXN应用于我的服务类,如下所示

<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创建“容器”,并且不接触方法的原始签名。

那么我怀疑应用代理后的方法是否也同步了。。?让我们假设
methodA
被代理并成为
proxy@metodA
然后
proxy@metodA
也是同步的,因为该方法是同步的。。。。