有關(guān)數(shù)據(jù)庫(kù)連接的系統(tǒng)配置技術(shù)_第1頁(yè)
有關(guān)數(shù)據(jù)庫(kù)連接的系統(tǒng)配置技術(shù)_第2頁(yè)
有關(guān)數(shù)據(jù)庫(kù)連接的系統(tǒng)配置技術(shù)_第3頁(yè)
有關(guān)數(shù)據(jù)庫(kù)連接的系統(tǒng)配置技術(shù)_第4頁(yè)
有關(guān)數(shù)據(jù)庫(kù)連接的系統(tǒng)配置技術(shù)_第5頁(yè)
已閱讀5頁(yè),還剩13頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、有關(guān)數(shù)據(jù)庫(kù)連接的系統(tǒng)配置技術(shù)有關(guān)數(shù)據(jù)庫(kù)連接的系統(tǒng)配置技術(shù)在本講您能了解如下知識(shí)點(diǎn)在本講您能了解如下知識(shí)點(diǎn)q配置配置HibernateHibernate系統(tǒng)的主要方式系統(tǒng)的主要方式perties文件文件qhibernate.cfg.xmlhibernate.cfg.xml文件文件q在在HibernateHibernate中如何提供數(shù)據(jù)庫(kù)連接中如何提供數(shù)據(jù)庫(kù)連接1 1、HibernateHibernate系統(tǒng)的缺省配置系統(tǒng)的缺省配置 p由于由于HibernateHibernate是為了能在各種不同環(huán)境下工作而設(shè)計(jì)的是為了能在各種不

2、同環(huán)境下工作而設(shè)計(jì)的, , 因因此存在著大量的配置參數(shù)。此存在著大量的配置參數(shù)。 幸運(yùn)的是多數(shù)配置參數(shù)都有比較直觀的默認(rèn)值幸運(yùn)的是多數(shù)配置參數(shù)都有比較直觀的默認(rèn)值, , 并有隨并有隨HibernateHibernate一同分發(fā)的配置樣例一同分發(fā)的配置樣例perties (perties (位位于于etc/)etc/)來展示各種配置選項(xiàng)。來展示各種配置選項(xiàng)。p我們所需做的僅僅是將這個(gè)樣例文件復(fù)制到類路徑我們所需做的僅僅是將這個(gè)樣例文件復(fù)制到類路徑 (classpath)(classpath)下做一些自定義的修改。下做一些自定義的修改。 2 2、

3、配置、配置HibernateHibernate系統(tǒng)的主要方式系統(tǒng)的主要方式(1 1)HibernateHibernate配置文件可以有兩種格式配置文件可以有兩種格式q一種是一種是 perties(默認(rèn)文件名)(默認(rèn)文件名)-3.0-3.0以前以前q另一種是另一種是 hibernate.cfg.xmlhibernate.cfg.xml(默認(rèn)文件名)(默認(rèn)文件名)-3.0-3.0以后以后 這些配置文件包含了一系列屬性及其屬性值,這些配置文件包含了一系列屬性及其屬性值,HibernateHibernate將根據(jù)這些屬性來連接數(shù)據(jù)庫(kù)和加

4、載將根據(jù)這些屬性來連接數(shù)據(jù)庫(kù)和加載O/R MappingO/R Mapping文件。文件。(2 2)文件的存放位置)文件的存放位置perties和和hibernate.cfg.xmlhibernate.cfg.xml格式的文件都必須放在格式的文件都必須放在WebWeb應(yīng)用的上下文應(yīng)用的上下文類路徑類路徑(WEB-INF/classes)(WEB-INF/classes)下下(3 3)利用配置文件中的選項(xiàng)來改變)利用配置文件中的選項(xiàng)來改變HibernateHibernate運(yùn)行時(shí)行為運(yùn)行時(shí)行為 比如數(shù)據(jù)庫(kù)連接的設(shè)定,或是其它能夠改

5、變比如數(shù)據(jù)庫(kù)連接的設(shè)定,或是其它能夠改變HibernateHibernate運(yùn)行時(shí)行為的一些設(shè)定運(yùn)行時(shí)行為的一些設(shè)定3 3、利用、利用perties文件實(shí)現(xiàn)文件實(shí)現(xiàn)HibernateHibernate的系統(tǒng)的系統(tǒng)配置配置 (1 1)利用)利用perties模板文件來進(jìn)行配置模板文件來進(jìn)行配置 對(duì)于對(duì)于perties文件,在文件,在HibernateHibernate的的hibernate-3.1et

6、chibernate-3.1etc目錄下有一個(gè)目錄下有一個(gè) perties perties 模模板,我們不必自己從頭寫,修改模板就可以了。板,我們不必自己從頭寫,修改模板就可以了。(2 2)作用)作用p在此文件中主要是進(jìn)行數(shù)據(jù)庫(kù)類型的配置(它是在此文件中主要是進(jìn)行數(shù)據(jù)庫(kù)類型的配置(它是hibernatehibernate啟動(dòng)后調(diào)用缺省初始化環(huán)境文件)啟動(dòng)后調(diào)用缺省初始化環(huán)境文件)p編輯它,注釋掉默認(rèn)的數(shù)據(jù)庫(kù),啟用本示例中所要使用的編輯它,注釋掉默認(rèn)的數(shù)據(jù)庫(kù),啟用本示例中所要使用的MS SQL ServerMS SQL Server就可以。就可

7、以。(3 3)主要的屬性項(xiàng)目及說明)主要的屬性項(xiàng)目及說明(4 4)采用)采用JDBCJDBC直接連接方式時(shí)的直接連接方式時(shí)的perties文文件內(nèi)容件內(nèi)容(5 5)在)在SessionFactorySessionFactory對(duì)象的創(chuàng)建代碼中加載各個(gè)資源映對(duì)象的創(chuàng)建代碼中加載各個(gè)資源映射文件射文件Configuration hibernateConfiguration = new Configuration hibernateConfiguration = new Configuration();Configuration();

8、 hibernateConfiguration.addResource(Book.hbm.xml); hibernateConfiguration.addResource(Book.hbm.xml);hibernateConfiguration.setProperty(hibernate.show_sql, hibernateConfiguration.setProperty(hibernate.show_sql, true); true); SessionFactory sessionFactory = SessionFactory sessionFactory = hibernateCon

9、figuration.buildSessionFactory();hibernateConfiguration.buildSessionFactory();4 4、利用、利用XMLXML格式的文件(格式的文件(hibernate.cfg.xmlhibernate.cfg.xml)來進(jìn)行配置)來進(jìn)行配置 (1 1)作用)作用q利用它來實(shí)現(xiàn)改變利用它來實(shí)現(xiàn)改變HibernateHibernate運(yùn)行時(shí)行為,比如說添加數(shù)據(jù)運(yùn)行時(shí)行為,比如說添加數(shù)據(jù)表的映射文件等等;表的映射文件等等;q這個(gè)文件可以當(dāng)成這個(gè)文件可以當(dāng)成perties的替

10、代。若的替代。若hibernate.cfg.xmlhibernate.cfg.xml和和perties兩個(gè)文件同時(shí)兩個(gè)文件同時(shí)存在,它將重載前者的屬性設(shè)置。存在,它將重載前者的屬性設(shè)置。(2 2)hibernate.cfg.xmlhibernate.cfg.xml和和perties兩個(gè)文兩個(gè)文件的差別件的差別qxmlxml配置文件提供了更易讀的結(jié)構(gòu)和更強(qiáng)的配置能力,可以配置文件提供了更易讀的結(jié)構(gòu)和更強(qiáng)的配置能力,可以直接對(duì)映射文件加以配置直接對(duì)映射文件加以配置q而

11、在而在propertiesproperties文件中則無法配置出文件中則無法配置出OROR映射文件,必須通映射文件,必須通過代碼中的過代碼中的Hard CodingHard Coding加載相應(yīng)的映射文件。加載相應(yīng)的映射文件。(3 3)使用應(yīng)用服務(wù)器)使用應(yīng)用服務(wù)器JNDIJNDI中的中的DatasourceDatasource處獲得連接處獲得連接q為了能在應(yīng)用程序服務(wù)器中使用為了能在應(yīng)用程序服務(wù)器中使用Hibernate, Hibernate, 我們應(yīng)當(dāng)總是我們應(yīng)當(dāng)總是將將Hibernate Hibernate 配置成注冊(cè)在配置成注冊(cè)在JNDIJNDI中的中的DatasourceDataso

12、urce處獲得連處獲得連接接q同時(shí)從同時(shí)從JNDIJNDI數(shù)據(jù)源獲得的數(shù)據(jù)源獲得的JDBCJDBC連接將自動(dòng)參與應(yīng)用程序服連接將自動(dòng)參與應(yīng)用程序服務(wù)器中容器管理的事務(wù)務(wù)器中容器管理的事務(wù)(container-managed transactions)(container-managed transactions)中去。因此,我們至少需要設(shè)置下列中去。因此,我們至少需要設(shè)置下列HibernateHibernate數(shù)據(jù)源屬性數(shù)據(jù)源屬性中的一個(gè)。中的一個(gè)。一般我們只需一般我們只需要設(shè)置它要設(shè)置它就可以了就可以了(4 4)基于)基于JDBCJDBC直接連接的直接連接的hibernate.cfg.xml

13、hibernate.cfg.xml示例文件部示例文件部分內(nèi)容分內(nèi)容 (5 5)基于容器的)基于容器的DataSourceDataSource實(shí)現(xiàn)(實(shí)現(xiàn)(JNDIJNDI的數(shù)據(jù)庫(kù)連接池)的數(shù)據(jù)庫(kù)連接池)hibernate.cfg.xmlhibernate.cfg.xml示例文件部分內(nèi)容示例文件部分內(nèi)容 (6 6)注意這個(gè))注意這個(gè)XMLXML配置文件中的配置文件中的DTDDTD定義定義(7 7)對(duì)上面)對(duì)上面hibernate.cfg.xmlhibernate.cfg.xml文件中的各個(gè)標(biāo)簽的解釋文件中的各個(gè)標(biāo)簽的解釋 請(qǐng)見文檔說明請(qǐng)見文檔說明-對(duì)應(yīng)一個(gè)數(shù)據(jù)源對(duì)應(yīng)一個(gè)數(shù)據(jù)源(8 8)一個(gè)典型)一

14、個(gè)典型hibernate.cfg.xmlhibernate.cfg.xml配置文件的示例配置文件的示例5 5、數(shù)據(jù)庫(kù)配置文件名稱可以不是、數(shù)據(jù)庫(kù)配置文件名稱可以不是HpertiesHperties或或Hibernate.cfg.xmlHibernate.cfg.xml(1 1)標(biāo)準(zhǔn)的配置形式)標(biāo)準(zhǔn)的配置形式q由于由于HibernateHibernate官方文檔(本文指官方文檔(本文指的文的文檔)的影響,很多檔)的影響,很多HibernateHibernate開發(fā)者誤以為系統(tǒng)一定要

15、有名開發(fā)者誤以為系統(tǒng)一定要有名稱為稱為HpertiesHperties或或Hibernate.cfg.xmlHibernate.cfg.xml的文件的文件q而且一定要放在而且一定要放在classesclasses的根目錄下。的根目錄下。(2 2)可選配置形式)可選配置形式q實(shí)際上,該文件只是一般的配置文件,名稱可以自己取,實(shí)際上,該文件只是一般的配置文件,名稱可以自己取,同時(shí)文件位置可以自己定。同時(shí)文件位置可以自己定。q而且在多數(shù)據(jù)庫(kù)環(huán)境下,可以有多個(gè)配置文件,使得程序而且在多數(shù)據(jù)庫(kù)環(huán)境下,可以有多個(gè)配置文件,使得程序可以連接多個(gè)數(shù)據(jù)庫(kù)??梢赃B接多個(gè)數(shù)據(jù)庫(kù)。(3 3)自定義配置文件的代碼示例(常用于單元測(cè)試)自定義配置文件的代碼示例(常用于單元測(cè)試)6 6、在、在HibernateHibernate中如何提供數(shù)據(jù)庫(kù)連接中如何提供數(shù)據(jù)庫(kù)連接 p用戶自己提供用戶自己提供JDBCJDBC連接連接 。q使用使用HibernateHibernate默認(rèn)的默認(rèn)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論