一、需求分析說(shuō)明
通過(guò)對(duì)數(shù)據(jù)庫(kù)系統(tǒng)原理的學(xué)習(xí),掌握數(shù)據(jù)庫(kù)管理系統(tǒng)的運(yùn)行原理,嘗試在給定的DBF文件操作框架的物理儲(chǔ)存基礎(chǔ)上通過(guò)java建立一個(gè)數(shù)據(jù)庫(kù)管理系統(tǒng),以更好的溫習(xí)學(xué)習(xí)的知識(shí)。
基本功能如下:
實(shí)現(xiàn)創(chuàng)建表,并把約束條件存儲(chǔ)到建立好的數(shù)據(jù)字典中
為表添加刪除列操作和刪除表操作
實(shí)現(xiàn)對(duì)表數(shù)據(jù)的插入操作,并實(shí)現(xiàn)插入前約束檢測(cè)
實(shí)現(xiàn)對(duì)表數(shù)據(jù)刪除操作
實(shí)現(xiàn)對(duì)表數(shù)據(jù)的修改操作,修改前對(duì)修改數(shù)據(jù)進(jìn)行約束檢測(cè)
實(shí)現(xiàn)對(duì)表數(shù)據(jù)的查詢(xún)操作,完成多表查詢(xún),單條件多條件查詢(xún),單字段排序與多字段排序
實(shí)現(xiàn)對(duì)輸入過(guò)的SQL語(yǔ)句進(jìn)行系統(tǒng)日志記錄,并添加時(shí)間
界面友好,易與操作,通過(guò)創(chuàng)建一個(gè)簡(jiǎn)單的窗口實(shí)現(xiàn)對(duì)SQL語(yǔ)句的輸入和對(duì)運(yùn)行結(jié)果的顯示
二、模塊分析
該系統(tǒng)存在于com.silence.mysql包中,系統(tǒng)文件夾目錄下的data文件夾是數(shù)據(jù)庫(kù)DBF文件的存儲(chǔ)目錄,logs文件夾是系統(tǒng)日志文件目錄。
2.1系統(tǒng)主模塊
該模塊是數(shù)據(jù)庫(kù)系統(tǒng)的主模塊,在包主目錄下,包括三個(gè)類(lèi)DBMS.java、DBMSForm.java、MyException:
DBMS.java:系統(tǒng)的運(yùn)行中心,通過(guò)輸入的SQL語(yǔ)句開(kāi)頭將SQL語(yǔ)句傳入到相應(yīng)的子模塊,并對(duì)SQL語(yǔ)句進(jìn)行標(biāo)準(zhǔn)化預(yù)處理;通過(guò)對(duì)輸入的正確的SQL語(yǔ)句實(shí)現(xiàn)對(duì)系統(tǒng)日志的記錄
DBMSForm.java:系統(tǒng)的顯示窗口,通過(guò)單例模式創(chuàng)建一個(gè)顯示窗口,實(shí)現(xiàn)對(duì)SQl語(yǔ)句的輸入操作和對(duì)運(yùn)行結(jié)果的反饋顯示,提供接口實(shí)現(xiàn)讓其他模塊運(yùn)行時(shí)對(duì)UI界面的即時(shí)刷新,該類(lèi)中的main函數(shù)是系統(tǒng)的運(yùn)行入口
MyException.java:自定義異常,通過(guò)接收子模塊拋出的運(yùn)行時(shí)異常,實(shí)現(xiàn)將異常反饋輸出到UI界面中供用戶參考
2.2 DBF文件操作模塊
該模塊在包名下的dbf包中,通過(guò)javadbf4.1.jar包提供的DBF文件操作函數(shù)庫(kù),實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)DBF文件的讀寫(xiě)操作,該模塊包括DBFContent.java和DBFUtils.java兩個(gè)類(lèi)。
DBFContent.java:這個(gè)是一個(gè)JavaBean,通過(guò)將讀取到的DBF中數(shù)據(jù)存儲(chǔ)到這個(gè)JavaBean中,實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)中數(shù)據(jù)的操作
DBFUtils.java:DBF文件操作工具類(lèi),通過(guò)對(duì)javadbf4.1.jar中函數(shù)的調(diào)用,實(shí)現(xiàn)對(duì)DBF文件的讀寫(xiě)操作,提供創(chuàng)建表,插入表和查詢(xún)表的操作函數(shù)

參考文檔和完整的文檔和源碼下載地址: