configuration是用來讀取配置檔案,從配置檔案中構件sessionfactory的。
sessionfactory sessionfactory=new configuration().configure().buildsessionfactory();configuration是配置檔案在記憶體中的表示。session session=sessionfactory.opensession();
sessionfactory是用來建立session的
1. sessionfactory是重量級的類,需要消耗的資源比較多。
2. sessionfactory是執行緒安全的
3. 一般來說sessionfactory是全域性唯一的,乙個配置檔案configuration對應著乙個sessionfactory就可以了。
開啟乙個新的session:
session session=sessionfactory.opensession();得到與當前執行緒繫結的session:
session session=sessionfactory.getcurrentsession();session是用來運算元據庫的核心物件
1. 增刪改查
refresh()
evict()
clear()
flush()
2. session的管理方式
get() vs load()
get()方法不會使用延遲載入,呼叫get()的時候就立即進行查詢。
load()方法會使用延遲載入的,呼叫load()方法的時候返回乙個**物件,這個**物件中只儲存了實體物件的id值,只有真正獲取物件的時候才會發出查詢語句。
用於操作事務的物件。
//開啟事務session提供了開啟事務的包裝方法:tx.begin();
//提交事務
tx.commit();
//回滾事務
tx.rollback();
session.begintransaction();
hibernate 常用配置
有些東西時間長了,經常想不起來 所以先記錄下來 1 hibernate.hbm2ddl.auto e.g.validat 執行前驗證表與實體是否一致 update 會話開始時,根據實體更新資料庫表 creat 會話開始時,重新建立資料庫的表 create drop 會話開始時候,建立資料庫中的表,關...
hibernate 常用註解
entity table name sys user dynamicinsert和 dynamicupdate生成動態sql語句,即在插入和修改資料的時候,語句中只包括要插入或者修改的字段 cache usage cacheconcurrencystrategy.標籤 有5種可選的快取方案 1,ca...
Hibernate常用註解
entity 宣告實體bean,每乙個持久化pojo類都是乙個實體bean,這可以通過在類的定義中使用 entity註解來進行宣告 id 註解則宣告了該實體bean的標識屬性,對應相應表使用id列作為主鍵列 table 是類一級的註解,通過 table註解可以為實體bean對映指定表 table 目...