★→→SessionFactory (orghibernateSessionFactory)
包含已經編譯的映射(mappings)是制造session的工廠可能含有一些可以在 各個事務(transaction)之間共享的數據
() SessionFactory的緩存
可分為兩類內置緩存和外置緩存
SessionFactory的內置緩存中存放了Hibernate配置信息和映射元數據信息同時也緩存了Hibernate自動生成的SQL語句等
SessionFactory的外置緩存是一個可配置的緩存插件在默認情況下SessionFactory不會啟用這個緩存插件外置緩存 能存放大量數據庫數據的拷貝外置緩存的物理介質可以是內存或者硬盤
() 只有一個數據存儲源只需創建一個SessionFactory
SessionFactory就是個重量級對象如果應用只有一個數據存儲源只需創建一個SessionFactory實例 因為隨意地創建SessionFactory實例會占用大量內存空間 但是當你的項目要操作多個數據庫時那你必須為每個數據庫指定一個SessionFactory
() Configuration的其他用法
Configuration的configure ()方法還支持帶參數的訪問方式你可以指定hbmxml文件的位置而不是使用默認的classpath 下面的hibernatecfgxml這種方式例如
Configuration cfg = new Configuration()
configure(
myexample
xml
);
★★→→Configuration
Configuration是hibernate的入口在新建一個Configuration的實例的時候hibernate會在classpath裡面查找 hibernateproperties文件如果該文件存在則將該文件的內容加載到一個Properties的實例GLOBAL_PROPERTIES裡面 如果不存在將打印信息hibernateproperties not found 然後是將所有系統環境變量(SystemgetProperties())也添加到LOBAL_PROPERTIES裡面如果hibernateproperties文件存在 系統還會驗證一下這個文件配置的有效性對於一些已經不支持的配置參數系統將打印警告信息
() 作用實現對Hibernate進行配置
Configuration接口的作用是對Hibernate進行配置以及對它進行啟動
在Hibernate的啟動過程中Configuration類的實例首先定位映射文檔的位置讀取這些配置然後創建一個SessionFactory對象
根據Configuration對象創建一個SessionFactory對象
為了能創建一個SessionFactory對象你必須在Hibernate初始化時創建一個Configuration類的實例並將已寫好的映射文件交由它處理 這樣Configuration對象就可以創建一個SessionFactory對象當SessionFactory對象創建成功後Configuration對象就沒有用了你可以簡單地拋棄它
() 它是啟動hibernate的對象
雖然Configuration接口在整個Hibernate項目中只扮演著一個很小的角色但它是啟動hibernate時你所遇到的第一個對象
()
Configuration config = new Configuration();
config
addClass(Customer
class);
sessionFactory = config
buildSessionFactory();
或者
[] [] [] []
From:http://tw.wingwit.com/Article/program/Java/ky/201311/29027.html