hibernate學習筆記

1、<propertyname="date"type="timestamp"column="EVENT_DATE"/>

  此處的type不是java的數據類型,也不是數據庫的數據類型,而是hibernate的映射類型

2、org.hibernate.Session 在第一次被使用的時候,即第一次調用 getCurrentSession() 的時候,其生命週期就開始。然後它被 Hibernate 綁定到當前線程。當事務結束的時候,不管是提交還是回滾,Hibernate 會自動把 org.hibernate.Session 從當前線程剝離,並且關閉它。假若你再次調用 getCurrentSession(),你會得到一個新的 org.hibernate.Session,並且開始一個新的工作單元。

3、Hibernate 會自動檢測到集合已經被修改並需要更新回數據庫。這叫做自動髒檢查(automatic dirty checking),你也可以嘗試修改任何對象的 name 或者 date 屬性,只要他們處於持久化狀態,也就是被綁定到某個 Hibernate 的 Session 上(如:他們剛剛在一個單元操作被加載或者保存),Hibernate 監視任何改變並在後臺隱式寫的方式執行 SQL。同步內存狀態和數據庫的過程,通常只在單元操作結束的時候發生,稱此過程爲清理緩存(flushing)。在我們的代碼中,工作單元由數據庫事務的提交(或者回滾)來結束——這是由 CurrentSessionContext 類的 thread 配置選項定義的。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章