溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

如何分析Java應(yīng)用程序和Hibernate

發(fā)布時(shí)間:2021-11-20 17:41:32 來源:億速云 閱讀:153 作者:柒染 欄目:編程語言

本篇文章為大家展示了如何分析Java應(yīng)用程序和Hibernate,內(nèi)容簡(jiǎn)明扼要并且容易理解,絕對(duì)能使你眼前一亮,通過這篇文章的詳細(xì)介紹希望你能有所收獲。

Hibernate有很多值得學(xué)習(xí)的地方,這里我們主要介紹Java應(yīng)用程序和Hibernate,包括介紹org.hibernate.Session是主要的運(yùn)行時(shí)接口等方面。

Java應(yīng)用程序?qū)⒂成湮募?,用于?shù)據(jù)持久化的屬性文件集成到了一起。首先將Catalog.hbm.xml和hibernate.properties文件復(fù)制到同一個(gè)目錄。并將這個(gè)目錄加到CLASSPATH中。在Java應(yīng)用程序中使用import導(dǎo)入org.hibernate包和dom4j包。

org.hibernate.Session是主要的運(yùn)行時(shí)接口,它負(fù)責(zé)將Java應(yīng)用程序和Hibernate連接起來。你可以使用它在數(shù)據(jù)庫表中增加、獲得、更新和刪除XML數(shù)據(jù)。我們可以從一個(gè)SessionFactory中獲得一個(gè)Session對(duì)象。這個(gè) SessionFactory接口提供了openSession方法用來創(chuàng)建一個(gè)數(shù)據(jù)庫連接以及打開一個(gè)連接會(huì)話。org.hibernate.cfg.Configuration類用來指定配置屬性和創(chuàng)建一個(gè)SessionFactory的映射文件。下面的代碼將創(chuàng)建一個(gè)配置對(duì)象:

Configuration config=new Configuration();

下面的代碼將映射文件catalog.hbm.xml加入到配置中:

config.addFile("catalog.hbm.xml");

現(xiàn)在映射文件Catalog.hbm.xml以及JDBC屬性文件在相同的目錄,并且應(yīng)用程序使用配置對(duì)象獲得這此文件的信息。下面的代碼將創(chuàng)建一個(gè)SessionFactory對(duì)象:

SessionFactory sessionFactory=config.buildSessioFactory();

接下來,將向使用SchemaExport工具創(chuàng)建的數(shù)據(jù)表中加入數(shù)據(jù),首先從SessionFactory對(duì)象中得到一個(gè)Session對(duì)象:

Session sess =sessionFactory.openSession();

下面的代碼將得一個(gè)Transaction對(duì)象,我們可以使用這個(gè)對(duì)象向數(shù)據(jù)表中加入數(shù)據(jù):

org.hibernate.Transaction tx = sess.beginTransaction();

使用DOM4J模式開始一個(gè)會(huì)話,第二個(gè)會(huì)話和***個(gè)主會(huì)話有同樣的連接、事務(wù)和上下文屬性:

Session dom4jSession = session.getSession(EntityMode.DOM4J);

下面將創(chuàng)建一個(gè)SAXReader對(duì)象用于分析描述數(shù)據(jù)表的XML文檔。我們可以使用read(File)方法來分析catalog.xml文件,代碼如下:

SAXReader saxReader = new SAXReader();  Document document = saxReader.read(new File("c:/Hibernate/catalog.xml"));

下面的代碼將獲得文檔對(duì)象中catalog節(jié)點(diǎn)的列表,并且創(chuàng)建一個(gè)Iterator對(duì)象用于瀏覽列表中止數(shù)據(jù):

List list = document.selectNodes("//catalog");  Iterator iter = list.iterator();

Iterate可以枚舉列表中的對(duì)象,并且從列表中獲得相應(yīng)的節(jié)點(diǎn)。我們可以使用save(String entityName,Object object)方法來將節(jié)點(diǎn)數(shù)據(jù)保存在數(shù)據(jù)庫中。以上介紹Java應(yīng)用程序和Hibernate。

上述內(nèi)容就是如何分析Java應(yīng)用程序和Hibernate,你們學(xué)到知識(shí)或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識(shí)儲(chǔ)備,歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI