我們有幾個類以Command-Query-Separation方式寫入和讀取數據庫層。Run spring @Transactional註釋方法在單個事務中
這些類中的每一個都分別用@Transactional(readOnly = true)用@Transactional註釋。
現在我們已經實現了一個數據導入,它使用我們的命令層創建許多對象並將它們寫入數據庫。
現在,每個單個對象的寫入都在中完成,在其自己的事務中,我確信這是一個主要的性能殺手。
是否有一種簡單的方式來註釋數據導入類的方式,即使它多次在命令層調用多個@Transactional註釋的方法,所有將在單個事務中完成?
這是否甚至是提高插入性能的有效方法,還是您認爲這是一個壞主意?
只需註釋父方法。那個叫他們的人。在一次交易中做所有這些事實上是可取的,因爲那麼整個過程將一起完成...... –
我已經嘗試過了,看起來沒有任何影響 - 是不是這樣,一種\ @Transactional方法從另一個實例調用\ @Transactional方法,這會自動導致創建新的事務? – SebastianRiemer
取決於。在通過'interface'自動裝配的方法中?你在使用AspectJ編織嗎? –