在Java中將對象自動(dòng)持久化到數(shù)據(jù)庫中,我們需要了解兩個(gè)概念。
持久化:就是對數(shù)據(jù)和程序狀態(tài)的保持。大多數(shù)情況下特別是企業(yè)級開發(fā)應(yīng)用時(shí),數(shù)據(jù)持久化往往也就意味著將內(nèi)存中的數(shù)據(jù)保存到磁盤上加以
固化,而持久化的實(shí)現(xiàn)過程則大多通過各種關(guān)系型數(shù)據(jù)庫來完成的。
持久層:把數(shù)據(jù)庫實(shí)現(xiàn)當(dāng)作一個(gè)獨(dú)立邏輯拿出來,即數(shù)據(jù)庫程序是在內(nèi)存中的,為了使程序運(yùn)行結(jié)束后狀態(tài)得以保存,就要保存到數(shù)據(jù)庫。持久
層是在系統(tǒng)邏輯層面上,專注于實(shí)現(xiàn)數(shù)據(jù)持久化的一個(gè)相對獨(dú)立的領(lǐng)域。
既然要獨(dú)立出一個(gè)“持久層”概念,而不是“持久模塊”或“持久單元”,也就意味著,我們的系統(tǒng)架構(gòu)中,應(yīng)該有一個(gè)相對獨(dú)立的邏輯層面,專注于數(shù)據(jù)持久化邏輯的實(shí)現(xiàn)。與系統(tǒng)其他部分相對而言,這個(gè)層面應(yīng)該具有一個(gè)較為清晰和嚴(yán)格的邏輯邊界。持久層的目的是通過持久層的框架將數(shù)據(jù)庫存儲(chǔ)從服務(wù)層中分離出來。
Hibernate是目前流行的持久層框架,它是對JDBC的輕量級的對象封裝,可以用在任何JDBC可以使用的場合。
持久化:就是對數(shù)據(jù)和程序狀態(tài)的保持。大多數(shù)情況下特別是企業(yè)級開發(fā)應(yīng)用時(shí),數(shù)據(jù)持久化往往也就意味著將內(nèi)存中的數(shù)據(jù)保存到磁盤上加以
固化,而持久化的實(shí)現(xiàn)過程則大多通過各種關(guān)系型數(shù)據(jù)庫來完成的。
持久層:把數(shù)據(jù)庫實(shí)現(xiàn)當(dāng)作一個(gè)獨(dú)立邏輯拿出來,即數(shù)據(jù)庫程序是在內(nèi)存中的,為了使程序運(yùn)行結(jié)束后狀態(tài)得以保存,就要保存到數(shù)據(jù)庫。持久
層是在系統(tǒng)邏輯層面上,專注于實(shí)現(xiàn)數(shù)據(jù)持久化的一個(gè)相對獨(dú)立的領(lǐng)域。
既然要獨(dú)立出一個(gè)“持久層”概念,而不是“持久模塊”或“持久單元”,也就意味著,我們的系統(tǒng)架構(gòu)中,應(yīng)該有一個(gè)相對獨(dú)立的邏輯層面,專注于數(shù)據(jù)持久化邏輯的實(shí)現(xiàn)。與系統(tǒng)其他部分相對而言,這個(gè)層面應(yīng)該具有一個(gè)較為清晰和嚴(yán)格的邏輯邊界。持久層的目的是通過持久層的框架將數(shù)據(jù)庫存儲(chǔ)從服務(wù)層中分離出來。
Hibernate是目前流行的持久層框架,它是對JDBC的輕量級的對象封裝,可以用在任何JDBC可以使用的場合。