前言


 

  最近在GitHub上看了一份關(guān)于基于runtime封裝的對(duì)象存儲(chǔ)型數(shù)據(jù)庫(kù)的開源代碼,覺得非常值得分享記錄一下,在IOS中對(duì)數(shù)據(jù)庫(kù)的操作一般通過CoreData和SQLite,CoreData 雖然能夠?qū)C對(duì)象轉(zhuǎn)化成數(shù)據(jù),保存在SQLite數(shù)據(jù)庫(kù)文件中,也能夠?qū)⒈4嬖跀?shù)據(jù)庫(kù)中的數(shù)據(jù)還原成OC對(duì)象,期間不需要編寫SQL語(yǔ)句,但使用起來并不是那么方便,而SQLite則需要用戶編寫相應(yīng)的數(shù)據(jù)庫(kù)語(yǔ)句,看起來不是很美觀,所以大家一般都會(huì)將其進(jìn)行封裝,讓其使用起來更加方便,而LHDB就是建立在SQLite之上的封裝。現(xiàn)在,我們來看其是如何實(shí)現(xiàn)的,不過在此之前,我先假設(shè)大家對(duì)OC的runtime機(jī)制和sqlite有一定的理解。附上源碼下載地址:github鏈接

 

實(shí)現(xiàn)


 

  所謂的基于對(duì)象存儲(chǔ)的數(shù)據(jù)庫(kù),顧名思義,就是一切對(duì)數(shù)據(jù)的操作都是對(duì)對(duì)象模型的操作,通過給對(duì)象模型屬性賦值,然后將對(duì)象交由底層去解析,轉(zhuǎn)化成相應(yīng)的SQL語(yǔ)句,然后執(zhí)行數(shù)據(jù)庫(kù)操作,我們先看看整體的一個(gè)LHDB目錄結(jié)構(gòu)(這里僅寫出頭文件):

延伸閱讀

學(xué)習(xí)是年輕人改變自己的最好方式-Java培訓(xùn),做最負(fù)責(zé)任的教育,學(xué)習(xí)改變命運(yùn),軟件學(xué)習(xí),再就業(yè),大學(xué)生如何就業(yè),幫大學(xué)生找到好工作,lphotoshop培訓(xùn),電腦培訓(xùn),電腦維修培訓(xùn),移動(dòng)軟件開發(fā)培訓(xùn),網(wǎng)站設(shè)計(jì)培訓(xùn),網(wǎng)站建設(shè)培訓(xùn)學(xué)習(xí)是年輕人改變自己的最好方式