HIBERNATE的SESSION和事務
以往開發模式總是針對SESSION-PER-REQUEST來進行,雖然有的時候很棒,但是對於一個相對長業務會話中,存在著多個操作的原子會話,操作期間有使用者的考慮時間(跨頁面),如果採用SESSION持久化上下文的話,可以在一個業務下儲存這個SESSION,在提交方式上設定手動提交,這樣就可以在一個SESSION中應用多個事務了,而且不用每次事務結束都同步資料庫,只有在原子操作完成的情況才手動同步,但是有兩個問題不理解:
1.
使用者期間有思考時間,如果這個時候一直持有SESSION的例項,那麼JDBC連線應該也是一直連線著,長時間的連線會影響併發訪問的速度.但是每次事務結束釋放了連線,又是頻繁的連線釋放.這個地方應該如何來理解?
HIBERNATE中的SESSION例項的建立是否就已經開啟了JDBC連線,是否可以在需要的時候才開啟連線,而不是例項化SESSION的時候就建立好了JDBC連線,如何設定?
2.我們保留持久化上下文的一個目的是解決懶載入問題,也就是讓我們需要應用的實體在受管的環境下,是否實體在受管環境下的話,表示他們與資料庫的連線也必須開啟,如果關閉的話,就不存在受管的情況了.實際和上面的問題差不多:SESSION例項建立後是否JDBC連線就已經開啟?
1.
使用者期間有思考時間,如果這個時候一直持有SESSION的例項,那麼JDBC連線應該也是一直連線著,長時間的連線會影響併發訪問的速度.但是每次事務結束釋放了連線,又是頻繁的連線釋放.這個地方應該如何來理解?
HIBERNATE中的SESSION例項的建立是否就已經開啟了JDBC連線,是否可以在需要的時候才開啟連線,而不是例項化SESSION的時候就建立好了JDBC連線,如何設定?
2.我們保留持久化上下文的一個目的是解決懶載入問題,也就是讓我們需要應用的實體在受管的環境下,是否實體在受管環境下的話,表示他們與資料庫的連線也必須開啟,如果關閉的話,就不存在受管的情況了.實際和上面的問題差不多:SESSION例項建立後是否JDBC連線就已經開啟?
[該貼被yongbuyanbai於2008-11-16 10:25修改過]
相關文章
- hibernate的事務管理和session物件的詳解Session物件
- Spring的四種宣告式事務的配置-Hibernate事務Spring
- Spring整合Hibernate的事務管理Spring
- open session in view引起的事務問題SessionView
- 如何管理hibernate 的session?Session
- Hibernate的session問題Session
- Hibernate的Session的get()和load()方法區別Session
- hibernate(九) 二級快取和事務級別詳講快取
- Spring中如何配置Hibernate事務Spring
- hibernate能否實現巢狀事務巢狀
- hibernate中的no session問題Session
- 【hibernate】Session快取Session快取
- 編輯 Java 中的事務 — JDBC 事務和 JTA 事務JavaJDBC
- hibernate的session.connection被session.dowork()替代Session
- [求助]Hibernate自增長主鍵的設定問題和事務問題
- 本地事務和分散式事務的區別分散式
- No Hibernate Session bound to threadSessionthread
- Hibernate的一級快取Session和二級快取SessionFactory快取Session
- sqlite的事務和鎖SQLite
- Oracle的事務和鎖Oracle
- MySQL 的索引和事務MySql索引
- Hibernate中的Session快取問題Session快取
- 我們來聊聊Cookie、Session和Storage的那些事CookieSession
- Java Hibernate 之 Session 狀態JavaSession
- spring宣告式事務無法關閉sessionSpringSession
- 關於v$session中的taddr列(事務物件地址)Session物件
- MySQL中的事務和MVCCMySqlMVC
- hibernate.current_session_context_classSessionContext
- 請教hibernate 中session問題Session
- MySQL 事務和鎖MySql
- MySQL事務和鎖MySql
- Innodbreadonly事務、MySQL5.7和Percona的事務改進MySql
- Spring與Hibernate整合中的session問題SpringSession
- Hibernate中session.getconnection()的替代方法Session
- Spring事務配置的五種方式和spring裡面事務的傳播屬性和事務隔離級別Spring
- hibernate中Session的執行緒安全的討論Session執行緒
- 定時kill長事務指令碼kill_long_session.sh指令碼Session
- 解決SpringMVC+Hibernate錯誤: No Hibernate Session bound to threadSpringMVCSessionthread