Hibernate入門1

來源:互聯網
上載者:User

標籤:功能   ati   直接   使用   唯一性   dao   其他   hibernate   lis   

Hibernate概述:1. 什麼是架構:

         寫程式,在使用架構之後,幫我們實現一部分的功能,使用架構的好處可以少寫一部分代碼實現功能

2. 什麼是hibernate架構:
  • hibernate架構應用在javaee三層結構中的dao層的架構
  • 在dao層裡面做對資料庫的crud操作,使用hibernate實現crud操作,hibernate底層代碼就是jdbc,hibernate對jdbc進行封裝,使用hibernate好處,不需要寫複雜的jdbc代碼了,不需要寫sql語句了
  • hibernate是一個開源的輕量級的架構
  • hibernate版本

             hibernate3.X

             hibernate4.x(過度版本,少有人用)

             hibernate5.x 

3. hibernate架構的目錄結構:
  • documentation:hibernate的相關文檔
  • lib:hibernate的相關jar包
  • project:hibernate的相關的原始碼

  

 

4. hibernate底層實現的思想:
  • hibernate使用orm思想對資料庫進行crud操作
  • 在web階段學習javabean思想(有javabean的操作),javabean更正確的叫法,叫做實體類
  • hibernate的orm思想(Object relational mapping):對象關係映射

            讓我們的實體類和我們的資料庫表進行一一的對應關係:讓實體類和資料庫的表對應,讓實體類的屬性和表裡面的欄位對應,這樣的話就不需要直接操作資料庫表,二動作表對應實體類對象,就可以實現對資料庫的操作。

 

Hibernate入門:
  • 搭建hibernate環境
    • 匯入jar包

       

       \lib\required\下的jar必須要

      

     \lib\jpa\下實體映射包

          還有一個是資料庫的驅動包

    • 使用hibernate步驟
      • 匯入jar包
      • 建立實體類

         

      • 配置實體類的設定檔(配置實體類和資料庫表的一一對應的關係,包括屬性和欄位,實體類和表)
        • 每一個實體類必須有一個屬性對應表的主鍵(保證唯一性,Hibernate要求)
        • 在每一個實體類的下面建立一個xml檔案(位置和名稱沒有具體的要求,但建議卸載該實體類的下面),建議命名為:實體類名稱.hbm.xml(此檔案需要引入dtd的約束)

           建立實體類

              引入約束檔案

          配置設定檔

      • 配置Hibernate的核心設定檔
        • 核心設定檔格式為xml,且核心設定檔名稱和位置固定(有要求:必須放在src目錄下面;必須為hibernate.cfg.xml)

          

        • 引入約束檔案

           

        • Hibernate在操作的過程中,只會載入核心設定檔,其他設定檔不會進行載入(如上面的映射設定檔) 
        • 配置hibernate.cfg.xml檔案     
          • 設定資料庫資訊
          • 配置Hibernate資訊
          • 配置對應檔資訊

             

      • 代碼實現hibernate的crud操作
        • 載入hibernate的核心設定檔
        • 建立SessionFactory對象
        • 使用SessionFactory得到Session對象
        • 開啟事務
        • crud操作
        • 提交事務
        • 關閉資源

 

package com.geore.test;import org.hibernate.Session;import org.hibernate.SessionFactory;import org.hibernate.Transaction;import org.hibernate.cfg.Configuration;import org.junit.Test;import com.geore.pojo.User;public class TestDemo1 {@Testpublic void fun() {// 載入hibernate核心設定檔,會到src目錄下去尋找hibernate.cfg.xml檔案進行載入Configuration cfg = new Configuration();cfg.configure();// 建立SessionFactory對象,讀取核心設定檔,並且根據映射關係將表建立SessionFactory sf = cfg.buildSessionFactory();// 使用SessionFactory建立Session對象,session類似於連結化物件Session session = sf.openSession();// 開啟事務Transaction ts = session.beginTransaction();// 寫具體的邏輯crud操作// 添加操作User user = new User();user.setUsername("Geore");user.setPassword("123456");session.save(user);// 提交事務ts.commit();// 關閉資源(之前還可以加上一步,復原事務)session.close();sf.close();}}

  

  

映射設定檔注意點

  • 映射設定檔名稱和位置沒有固定的要求
  • 映射設定檔中,標籤name屬性值寫實體類相關的內容
  • Class標籤name屬性值實體類的全路徑
    • Id標籤和property標籤name屬性值,實體類屬性名稱
    • Id標籤和property標籤,column屬性可以省略(不寫預設和那麼屬性的值一樣)
  • Property標籤還有一個type屬性,用來指定表欄位的類型(可以不寫)

 

核心設定檔的細節  

  • 核心設定檔的名稱和位置固定
  • 核心設定檔主要分為部分的內容
    • 設定資料庫資訊:必須寫
    • 配置Hibernate資訊:可選
    • 配置映射關係檔案: 必須寫

Hibernate入門1

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.