Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/366.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 弹簧@transactional性能_Java_Performance_Spring_Transactional - Fatal编程技术网

Java 弹簧@transactional性能

Java 弹簧@transactional性能,java,performance,spring,transactional,Java,Performance,Spring,Transactional,假设我有一个服务bean,它有两种方法: @Transactional(readonly=false) public void doSomething() @Transactional(readonly=true) public void doSomethingReadOnly() 和第三种方法的2种变体: @Transactional(readonly=false) public void doSomethingNice1(){ doSomethingReadOnly(); }

假设我有一个服务bean,它有两种方法:

@Transactional(readonly=false)
public void doSomething() 

@Transactional(readonly=true)
public void doSomethingReadOnly()
和第三种方法的2种变体:

@Transactional(readonly=false)
public void doSomethingNice1(){
    doSomethingReadOnly();
}

@Transactional(readonly=false)
public void doSomethingNice2(){
    doSomething();
}
什么样的呼叫将更有效地执行?doSomethingNice1()?doSomethingNice2()


谢谢

换句话说,当从同一个bean中调用使用此注释注释的方法时,您想知道注释
@Transactional
是否有意义

我相信这取决于您的方面是如何配置的。如果他们使用代理,那么从同一个bean中调用的方法将被直接调用,因此注释将不起任何作用。但是,如果您使用字节码修改(例如AspectJ),则将使用“最强”注释,因此调用只读事务方法将稍微更有效

doSomethingNice1()
(readonly=false)
覆盖了
doSomethingReadOnly()
(readonly=true)
,如果这是您要问的。