「Spring Boot 的spring.jpa.open-in-view=true:揭示OSIV 反模式及其意義
了解視圖中的開啟會話(OSIV)
Spring Boot 文件中的spring.jpa.open-in-view 屬性是一個標誌,用於控制Hibernate 的會話在servlet 請求處理階段是否保持開啟狀態。 >
使用的後果OSIV
OSIV模式有幾個顯著的缺點:
- 資料庫效能下降: 在渲染階段使用自動提交模式,造成壓力在資料庫伺服器上。 🎜>混亂關注: 資料庫語句由業務邏輯和UI生成,使整合測試和程式碼維護變得複雜。 🎜>連線擁塞:
保持資料庫連線開啟整個渲染階段會延長租用時間並阻礙並發性。效能與可擴充性:- 在application.properties 中明確設置spring.jpa.open-in-view: true=false設定檔。 >
- 處理LazyInitializationException
如果OSIV 被停用,當UI 嘗試時可能會出現「LazyInitializationException」存取延遲初始化的關聯。實體。查詢來選擇特定的關聯實體。
以上是你應該使用 Spring Boot 的 `spring.jpa.open-in-view=true` 嗎?的詳細內容。更多資訊請關注PHP中文網其他相關文章!