我試圖通過將多個查詢調用合併到存儲過程來提高應用程序的性能。這將減少N/W流量,往返行程和從應用程序還單獨的數據處理邏輯。從JDBC調用存儲過程時的最佳實踐
雖然我在這,我想用最有效的方式做到這一點的。
截至目前,我計劃用PreparedStatement
與prepareCall
方法。
如果這樣做的更好的方法,請建議。
我將需要通過許多IN params
程序,並且還需要OUT params
返回JAVA
代碼。
我試圖通過將多個查詢調用合併到存儲過程來提高應用程序的性能。這將減少N/W流量,往返行程和從應用程序還單獨的數據處理邏輯。從JDBC調用存儲過程時的最佳實踐
雖然我在這,我想用最有效的方式做到這一點的。
截至目前,我計劃用PreparedStatement
與prepareCall
方法。
如果這樣做的更好的方法,請建議。
我將需要通過許多IN params
程序,並且還需要OUT params
返回JAVA
代碼。
據我所知,沒有「更好」的方式。你已經在整個應用程序中做得更好。使用存儲過程,而不是普通的SQL。所以你得到了曲線。如果你是真正壓性能,那麼你可能也想看看在數據庫本身。緩存,索引等。從應用程序中,您可以使用緩存層緩存。但是,我猜這些不是你現在想要的。
儘管可以通過引導您學習一些教程來很容易地回答您的問題,例如,來自:
...我還是想指出的是,也有需要注意的地方大量使用MySQL的存儲過程。請考慮Bill Karwin's回答這個Quora的問題:
例如,第一個問題:
MySQL的存儲過程所編制的第一次會話使用它們 - 但編譯版本在會話結束時被丟棄。與Oracle或其他RDBMS品牌中的存儲過程不同,後者將編譯後的版本持久保存。這意味着MySQL爲程序增加了很多開銷,特別是如果你的模式是每個會話只調用一次程序。