在Java中雖然提供了良好的數據庫支持并有大量的第三方持久層框架作為輔助,但相對其他語言來講在Java中使用數據庫連接時造成的系統損耗也會比較多。因此對于數據吞吐量較少的系統而言,有時放棄數據庫而改為使用本地文件來存儲資料反而是種較好的選擇,比如我們對于Java程序的啟動配置通常會使用Properties及dom4j等從文本文件或xml文檔讀取數據,而不會一股腦丟到數據庫中,這幾乎已經是一種常識。
但就功能而言,Properties的操作功能僅僅局限在對引入的文件進行操作,雖然比較適合簡單的文件讀寫操作,卻遠沒有xml那么強大,而且多配置時可能需要多個文件才能清楚搞定設置,否則會亂得一塌糊涂。但就xml而言,即便dom4j或jdom等java中常用的xml操作組件功能已很強大,但大量元素的出現又令其操作沒有Properties調用來的直觀,而且在文件較小時xml文檔的處理速度也會較純文本文件有不必要的浪費。
但若為了保存那少得可憐的數據而動用如access或sqllite等小型關系數據庫,又未免太興師動眾,得不償失。
比如我的loonframework-game框架,其本身是一個java2d游戲開發組件,所以應該提供一個用戶可以使用的持久存儲環境,用于存儲地圖,對話,分支劇情等等。而無論使用Properties或xml,我感覺都有某些局限性,不盡如人意(我很懶~)。
這時候如果能有一個組件即象Properties那么易于操作,而又象xml那樣能處理較為復雜的數據,又兼備某些數據庫特性就好了。
但我手頭卻沒有那么方便的東西,于是只好響應在延安的號召“自己動手,豐衣足食”了。
源碼下載地址如下: http://download.csdn.net/source/475512
這是一個簡單的嵌入式數據庫java實現,利用純文本方式進行數據庫操作,就性質上講與Berkeley DB類似,并非標準的關系型數據庫,不支持sql語句,全部操作采用api實現.但目前功能還較為簡陋,以每一個表格代表一個文件中的存儲區域,雖然有數據類型的概念,但是目前每種數據類型僅允許對應一個表,即在構建表時確定,不能混用。已經支持CRUD等基本操作,就效率上講要較xml文檔操作為高。
包內容如下:
使用示例如下:
但就功能而言,Properties的操作功能僅僅局限在對引入的文件進行操作,雖然比較適合簡單的文件讀寫操作,卻遠沒有xml那么強大,而且多配置時可能需要多個文件才能清楚搞定設置,否則會亂得一塌糊涂。但就xml而言,即便dom4j或jdom等java中常用的xml操作組件功能已很強大,但大量元素的出現又令其操作沒有Properties調用來的直觀,而且在文件較小時xml文檔的處理速度也會較純文本文件有不必要的浪費。
但若為了保存那少得可憐的數據而動用如access或sqllite等小型關系數據庫,又未免太興師動眾,得不償失。
比如我的loonframework-game框架,其本身是一個java2d游戲開發組件,所以應該提供一個用戶可以使用的持久存儲環境,用于存儲地圖,對話,分支劇情等等。而無論使用Properties或xml,我感覺都有某些局限性,不盡如人意(我很懶~)。
這時候如果能有一個組件即象Properties那么易于操作,而又象xml那樣能處理較為復雜的數據,又兼備某些數據庫特性就好了。
但我手頭卻沒有那么方便的東西,于是只好響應在延安的號召“自己動手,豐衣足食”了。
源碼下載地址如下: http://download.csdn.net/source/475512
這是一個簡單的嵌入式數據庫java實現,利用純文本方式進行數據庫操作,就性質上講與Berkeley DB類似,并非標準的關系型數據庫,不支持sql語句,全部操作采用api實現.但目前功能還較為簡陋,以每一個表格代表一個文件中的存儲區域,雖然有數據類型的概念,但是目前每種數據類型僅允許對應一個表,即在構建表時確定,不能混用。已經支持CRUD等基本操作,就效率上講要較xml文檔操作為高。
包內容如下:

使用示例如下:

更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
