我正在Spring,Java,Hibernate,Postgresql環境中工作。我在數據庫中看到一些非常嚴重的緩慢。我的具體問題是,如果我將Spring的@Transactional
註釋添加到包含未觸及數據庫的方法的類中,它有多糟?換句話說,他們不需要交易。假設這些方法是一些更常用的方法。不必要的數據庫事務導致緩慢?
因此,像這樣(只是一個例子):
@Component
@Transactional
public class ProjectManager {
public String getProjectUrl(Project project) {
//simple logic that does not use the database
return "/my/url/" + project.getId();
}
}
我知道有很多原因可能導致數據庫緩慢的因素。我只是想知道這是一個巨大的紅旗還是沒有那麼重要?我是否應該將這些方法拉出來,並將它們放入不帶@Transactional
標記的不同類中?
TIA
你有這個方法有沒有'@ Transactional'註解的基準嗎? –
*「如果我添加Spring的'@ Transactional'註釋,它有多糟糕* *很少,除非您分析代碼說它存在問題,我懷疑它會。 – Andreas
我不是100%確定它是否會有任何幫助,但[這裏](http://blog.jhades.org/how-does-spring-transactional-really-work/)你可以找到解釋當你使用'@ Transactional'時究竟發生了什麼 – saljuama