2015-06-16 37 views
2

假設我有一個Repository類。是否可以在Spring中從非事務性方法調用事務性方法?

@Repository 
class MyRepository { 

    @Transactional 
    void method1() { 
     // some logic here 
    } 

    void method2() { 
     // some logic here 
     method1(); 
     // some logic here 
    } 
} 

是否有可能在String中做到這一點?這是如何工作的?

+0

這個特殊的例子是一個自我調用,並且不會與通常的代理AOP一起工作。 – chrylis

+0

我該如何讓它工作? – JohnWinter

+0

通常情況下,控制器是調用圖層服務的非事務類,這是內置事務方法的好習慣。我沒有看到它的問題,如果你的問題需要這種行爲,你可以做到沒有問題。 – lateralus

回答

0

你不能這樣做,因爲spring可以包裝將從其他類(服務)調用的方法。如果你使用同一個類來調用帶註釋的方法,那麼spring將不會做任何事情,因爲它不能包裝它們

相關問題