Hibernate ORM功能概述
Hibernate有很多值得學習的地方,這里我們主要介紹Hibernate ORM功能,包括介紹什么是Hibernate和ORM的實現(xiàn)原理等方面。
1.什么是ORM
ORM的全稱是Object Relational Mapping,即對象關(guān)系映射。它的實現(xiàn)思想就是將關(guān)系數(shù)據(jù)庫中表的數(shù)據(jù)映射成為對象,以對象的形式展現(xiàn),這樣開發(fā)人員就可以把對數(shù)據(jù)庫的操作轉(zhuǎn)化為對這些對象的操作。因此它的目的是為了方便開發(fā)人員以面向?qū)ο蟮乃枷雭韺崿F(xiàn)對數(shù)據(jù)庫的操作。
2.什么是Hibernate
對于Hibernate的稱呼有很多,比如工具、技術(shù)、框架以及解決方案等,這些都可以,重要的是大家要知道它的作用。在這里我習慣性稱它為框架,它是一種能實現(xiàn)ORM的框架。能實現(xiàn)ORM這個功能的框架有很多,Hibernate可以說是這些框架中最流行、最受開發(fā)者關(guān)注的,甚至連JBoss公司也把它吸收進來,利用它在自己的項目中實現(xiàn)Hibernate ORM功能。
3.ORM的實現(xiàn)原理
現(xiàn)在在Java領(lǐng)域大家對Hibernate的討論很多,比如它的優(yōu)缺點、如何應(yīng)用、錯誤如何解決以及把它和Struts/Spring等框架相結(jié)合作為整個系統(tǒng)的解決方案。在這里我想和大家探討一些更深層次的話題,那就是Hibernate是如何實現(xiàn)ORM的功能?如果讓我們自己開發(fā)一款實現(xiàn)Hibernate ORM功能的框架需要怎么做?其實這些問題就是圍繞著一個詞,那就是“映射”,如果我們知道如何實現(xiàn)這種映射那么我們也能夠開發(fā)出自己的一款ORM框架。會使用Hibernate的開發(fā)人員都知道,在使用它實現(xiàn)Hibernate ORM功能的時候,主要的文件有:映射類(*.java)、映射文件(*.hbm.xml)以及數(shù)據(jù)庫配置文件(*.properties或*.cfg.xml),它們各自的作用如下。
1).映射類:它的作用是描述數(shù)據(jù)庫表的結(jié)構(gòu),表中的字段在類中被描述成屬性,將來就可以實現(xiàn)把表中的記錄映射成為該類的對象。
2).映射文件:它的作用是指定數(shù)據(jù)庫表和映射類之間的關(guān)系,包括映射類和數(shù)據(jù)庫表的對應(yīng)關(guān)系、表字段和類屬性類型的對應(yīng)關(guān)系以及表字段和類屬性名稱的對應(yīng)關(guān)系等。
3).數(shù)據(jù)庫配置文件:它的作用是指定與數(shù)據(jù)庫連接時需要的連接信息,比如連接哪中數(shù)據(jù)庫、登錄用戶名、登錄密碼以及連接字符串等。
在這三種主要的文件中,映射類為普通Java源文件、映射文件為XML格式、數(shù)據(jù)庫配置文件為Properties格式或者是XML格式。想理解“映射”首先我們需要知道如何解析這三種文件,即解析XML格式文件、解析Properties格式文件和解析Java類文件。
【編輯推薦】