課程
/后端開發
/Java
/使用Struts2+Hibernate開發學生信息管理功能
查詢語句還需要開啟事務嗎?且失敗了就不用提交事務了吧
2015-10-27
源自:使用Struts2+Hibernate開發學生信息管理功能 2-3
正在回答
開啟事務的目的是為了確保數據的準確性,如果需要同時執行多條SQL語句,則需要放到事務中進行,只要其中有一行執行失敗,則事務回滾。如果只是查詢操作,不牽扯對數據庫內容的更改,不需要開啟事務。但是,在Hibernate中個人建議最好也把查詢都放在事務中進行,增刪改則必須要放到事務進行。如果當前的Session對象和當前線程綁定,例如:?
<property??name="current_session_context_class"?>thread?</property?>
再調用session.createQuery()方法執行查詢,就會拋出異常。在hibernate中,任何向數據庫的從操作都開始于一個事務的開始,結束于一個事務的結束。
yu870646595 提問者
xbox1994丶
”如果只是查詢操作,不牽扯對數據庫內容的更改,不需要開啟事務。但是,在Hibernate中個人建議最好也把查詢都放在事務中進行?!?/p>
這句話邏輯不通,也沒有解釋為什么最好放到事務中去,這答案也能被采納?
“在Hibernate中個人建議最好也把查詢都放在事務中進行,增刪改則必須要放到事務進行”。 實際工作中事務都是應該盡量少開啟,特別是高并發的情況。但Hibernate通常的做法是怎樣我還真不清楚。
舉報
Strust2+Hibernate整合開發案例,Java Web開發技能更上一層樓
1 回答關于開啟一個事務?如下圖:
1 回答查詢不是可以用get loat嗎?為什么用hql語句,他們有什么不同嗎?
1 回答什么時候需要提交事務?沒提交事務居然也執行成功了
3 回答hibernate為什么在出現異常時,還要提交事務,不是該rollback嗎?
2 回答SessionFactory為什么還需要注冊服務之后才創建?
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2015-10-28
開啟事務的目的是為了確保數據的準確性,如果需要同時執行多條SQL語句,則需要放到事務中進行,只要其中有一行執行失敗,則事務回滾。如果只是查詢操作,不牽扯對數據庫內容的更改,不需要開啟事務。但是,在Hibernate中個人建議最好也把查詢都放在事務中進行,增刪改則必須要放到事務進行。如果當前的Session對象和當前線程綁定,例如:?
再調用session.createQuery()方法執行查詢,就會拋出異常。在hibernate中,任何向數據庫的從操作都開始于一個事務的開始,結束于一個事務的結束。
2018-02-01
”如果只是查詢操作,不牽扯對數據庫內容的更改,不需要開啟事務。但是,在Hibernate中個人建議最好也把查詢都放在事務中進行?!?/p>
這句話邏輯不通,也沒有解釋為什么最好放到事務中去,這答案也能被采納?
2016-10-03
“在Hibernate中個人建議最好也把查詢都放在事務中進行,增刪改則必須要放到事務進行”。 實際工作中事務都是應該盡量少開啟,特別是高并發的情況。但Hibernate通常的做法是怎樣我還真不清楚。