序言
前一篇文章知道了什么是hibernate,并且創(chuàng)建了第一個hibernate工程,今天就來先談談hibernate的一級緩存和它的三種狀態(tài),先要對著兩個有一個深刻的了解,才能對后面我要講解的一對多,一對一、多對多這種映射關系更好的理
--WH
一、一級緩存和快照
什么是一級緩存呢?
很簡單,每次hibernate跟數據庫打交道時,都是通過session來對要操作的對象取得關聯(lián),然后在進行操作,那么具體的過程是什么樣的呢?
1、首先session將一個對象加入自己的管理范圍內,其實也就是把該對象放入自己的一級緩存中,例如,session.save(xxx);這個語句就是將xxx保存在自己的一級緩存中,等待事務提交后,hibernate才真正的發(fā)sql語句,對數據庫進行操作。注意:session進行操作的時候,是將對象加入自己的一級緩存,并不是就直接跟數據庫打交道了。
2、在一級緩存中會做些什么事情呢?為什么能夠知道是發(fā)insert、還是update又或者delete呢?那這里就要提到一個快照的概念了,講講內部是什么原理。
延伸閱讀
- ssh框架 2016-09-30
- 阿里移動安全 [無線安全]玩轉無線電——不安全的藍牙鎖 2017-07-26
- 消息隊列NetMQ 原理分析4-Socket、Session、Option和Pipe 2024-03-26
- Selective Search for Object Recognition 論文筆記【圖片目標分割】 2017-07-26
- 詞向量-LRWE模型-更好地識別反義詞同義詞 2017-07-26
- 從棧不平衡問題 理解 calling convention 2017-07-26
- php imagemagick 處理 圖片剪切、壓縮、合并、插入文本、背景色透明 2017-07-26
- Swift實現JSON轉Model - HandyJSON使用講解 2017-07-26
- 阿里移動安全 Android端惡意鎖屏勒索應用分析 2017-07-26
- 集合結合數據結構來看看(二) 2017-07-26