您好,歡迎來到賦能網(wǎng)!

hibernate框架中最常用的數(shù)據(jù)查詢方式是哪些?Hibernate如何添加數(shù)據(jù)?

賦能網(wǎng) 2023-05-09 117

Hibernate是一個開放源代碼的對象關系映射框架,它能使java程序員可以隨心所欲的使用對象編程思維來操縱數(shù)據(jù)庫。那hibernate框架中最常用的數(shù)據(jù)查詢方式是哪些?下面來我們就來給大家講解一下。

hibernate框架的檢索方式有以下幾種:

1. OID檢索:根據(jù)唯一標識OID檢索數(shù)據(jù);

2. 對象導航檢索:根據(jù)某個對象導航查詢與該對象關聯(lián)的對象數(shù)據(jù);

3. HQL檢索:通過query接口對象查詢;

4. QBC檢索:通過criteria接口對象查詢;

5. SQL檢索:通過SQL語句查詢;

Hibernate如何添加數(shù)據(jù)?

在 UserTest 類中創(chuàng)建一個名稱為 testInsert 的方法,該方法用于向數(shù)據(jù)庫中添加數(shù)據(jù),其代碼如下所示。

package com.mengma.test;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;
import org.hibernate.Session;
import org.junit.Test;
import com.mengma.domain.User;
public class UserTest
{
    // 添加操作
    @Test
    public void testInsert()
    {
        // 1.創(chuàng)建Configuration對象并加載hibernate.cfg.xml配置文件
        Configuration config = new Configuration()
            .configure();
        // 2.獲取SessionFactory
        SessionFactory sessionFactory = config.buildSessionFactory();
        // 3.得到一個Session
        Session session = sessionFactory.openSession();
        // 4.開啟事務
        Transaction transaction = session.beginTransaction();
        // 5.執(zhí)行持久化操作
        User user = new User();
        user.setName("zhangsan");
        user.setAge(21);
        user.setGender("男");
        // 將對象保存到表中
        session.save(user);
        // 6.提交事務
        transaction.commit();
        // 7.關閉資源
        session.close();
        sessionFactory.close();
    }
}

上述代碼中,首先創(chuàng)建 Configuration 類的實例,并加載解析 hibernate.cfg.xml 核心配置文件。然后獲取 SessionFactory 讀取解析映射文件信息,并將 Configuration 對象中的所有配置信息加載到 SessionFactory 內(nèi)存中。接著得到一個 Session,開啟一個事務,之后創(chuàng)建 User 對象,向?qū)ο笾性O置添加數(shù)據(jù),通過 session.save() 方法完成向數(shù)據(jù)庫中保存數(shù)據(jù)的操作。最后提交事務,并關閉資源。

添加 JUnit 測試

在軟件開發(fā)過程中,需要有相應的測試工作。依據(jù)測試目的的不同,可以將軟件測試分為單元測試、集成測試、系統(tǒng)測試等。其中單元測試在軟件開發(fā)階段是最底層的測試,它易于及時發(fā)現(xiàn)并解決問題。JUnit 就是一個進行單元測試的開源框架。

本程序使用的就是單元測試框架 JUnit4,使用此框架測試時,不需要 main 方法,就可以直接對類中的方法進行運行測試。其中 @Test 用于測試的注解,要測試哪個方法,只需要在相應測試的方法上添加此注解即可。

當在需要測試方法上寫入 @Test 后,MyEclipse 會在 @Test 處報出 Test cannot be resolved to a type 的錯誤,將鼠標移到 @Test 處,在顯示的彈出窗口中,單擊 Add JUnit4 library to the build path,程序會自動將 JUnit4 的支持包加入到項目中,如圖所示。

添加后在項目中會多出兩個關于 JUnit4 的 JAR 包,在 MyEclipse 中的顯示如圖所示。

在 UserTest 類中,右擊 testInsert() 方法,在彈出的快捷菜單中選擇 Run As→JUnit Test 選項運行測試,如圖所示。

單擊 JUnit Test 選項后,運行的結果如圖所示。

在圖中,當 JUnit 選項卡的進度條為綠色時,表明運行結果正確,如果進度條為紅色,則表示有錯誤,并且會在窗口中顯示所報的錯誤信息。運行成功后,查詢數(shù)據(jù)庫 user 表中的數(shù)據(jù),其結果如圖所示。

從圖中可以看出,使用 Hibernate 框架成功地向 user 表中添加了一條數(shù)據(jù)。

這樣 Hibernate 就成功添加數(shù)據(jù)了,當然能添加數(shù)據(jù)就可以修改數(shù)據(jù),關于修改數(shù)據(jù)相關操作我們在以后給大家分享哦!最后大家如果想要了解更多java架構師知識,敬請關注賦能網(wǎng)。


本文鏈接:

本文章“hibernate框架中最常用的數(shù)據(jù)查詢方式是哪些?Hibernate如何添加數(shù)據(jù)?”已幫助 117 人

免責聲明:本信息由用戶發(fā)布,本站不承擔本信息引起的任何交易及知識產(chǎn)權侵權的法律責任!

本文由賦能網(wǎng) 整理發(fā)布。了解更多培訓機構》培訓課程》學習資訊》課程優(yōu)惠》課程開班》學校地址等機構信息,可以留下您的聯(lián)系方式,讓課程老師跟你詳細解答:
咨詢熱線:4008-569-579

如果本頁不是您要找的課程,您也可以百度查找一下: