蔣幫寶
摘 要:一直以來,軟件的開發(fā)和數(shù)據(jù)庫之間的設計具有十分重要的聯(lián)系。本文筆者通過實驗,首先簡單闡述了關于框架技術以及Java 數(shù)據(jù)庫技術之間的關系,然后具體進行數(shù)據(jù)庫框架模型的研究設計,最后利用程序真正實現(xiàn)了基于Java的數(shù)據(jù)庫應用框架的設計,希望能夠對相關研究者有所幫助,為信息產業(yè)的快速發(fā)展提供幫。
關 鍵 詞:Java;數(shù)據(jù)庫;應用框架;研究設計;數(shù)據(jù)庫框架
近年來,隨著信息技術的不斷提升,人們對于軟件的需求也越來越高,進而關于計算機軟件的開發(fā)以及應用也更加廣泛。在使用數(shù)據(jù)庫的時候,如果每一個程序員都利用自己的類,那么將會增加程序員自身的工作量,同時也提升了軟件開發(fā)之中潛在錯誤的發(fā)生率,而且在很大的程度上也降低了數(shù)據(jù)庫操作的隨意性,導致一些代碼無法復用。為了更好的開發(fā)系統(tǒng)軟件,實現(xiàn)軟件開發(fā)的廣泛利用,其中,基于Java的數(shù)據(jù)庫應用框架的研究設計就顯得尤為重要。
一、關于框架技術以及Java數(shù)據(jù)庫技術之間的關系
現(xiàn)階段,大量的軟件開發(fā)實踐表明,基本上所有的軟件開發(fā)都是在一定的已有代碼,框架以及組件的基礎上實施的二次開發(fā),并且以框架為基礎的二次開發(fā)也應經被業(yè)界軟件開發(fā)所認同,并形成共識,也被應用在數(shù)據(jù)庫開發(fā)之中。在當前情況下,利用數(shù)據(jù)庫框架進行軟件開發(fā)具有以下幾方面的優(yōu)勢:第一,統(tǒng)一執(zhí)行任務的方式,提高執(zhí)行任務方式的一致性;第二,構建開發(fā)人員同數(shù)據(jù)庫之間的中間層,有效地降低了軟件開發(fā)設計的風險;第三,有效的隱藏了數(shù)據(jù)庫操作的復雜性,使得復雜任務的處理也具有標準的操作程序[1]。其中,如圖1所示,為關于利用框架處理復雜任務的標準。另外,關于Java 開發(fā)同樣也利用了大量的數(shù)據(jù)庫框架。在應用的所有數(shù)據(jù)庫框架之中,應用最廣泛地就是“Hibernate 框架”,其中,Hibernate 框架對于大型軟件系統(tǒng)的開發(fā)更加方便[2]。
另外,Java是一種簡單的,面象對象的,分布式的,解釋的,鍵壯的安全的,結構的中立的,可移植的,性能很優(yōu)異的多線程的,動態(tài)的語言。Java建立在擴展TCP/IP網(wǎng)絡平臺上。庫函數(shù)提供了用HTTP和FTP協(xié)議傳送和接受信息的方法。這使得程序員使用網(wǎng)絡上的文件和使用本機文件一樣容易。關于Java 數(shù)據(jù)庫技術,它是一種基于JAVA 語言訪問數(shù)據(jù)庫的技術。其中,Java 數(shù)據(jù)庫技術針對訪問數(shù)據(jù)庫提供了專門的接口,并且關于Java 數(shù)據(jù)庫技術的實現(xiàn)主要是由數(shù)據(jù)庫廠商提供的,關于編程也主要是針對接口進行的。在Java 數(shù)據(jù)庫技術實現(xiàn)的過程之中,為了簡化程序員的操作,數(shù)據(jù)庫之中一共有五個十分關鍵的接口。具體如下所示:第一,Connection,具有保存特定的數(shù)據(jù)庫連接或者是會話功能,可以幫助程序員連接上下文,執(zhí)行SQL 語句,同時返回其結果。第二,Statement,幫助執(zhí)行靜態(tài)SQL 語句,同時能夠返回其所生成的結果對象。第三,Prepared Statement,主要用來顯示預編譯的SQL 語句對象。第四,Callable Statement,在執(zhí)行SQL 存儲過程中具有十分重要的作用。第五,ResultSet,通常主要用來表示數(shù)據(jù)庫結果集的數(shù)據(jù)表,有助于實現(xiàn)執(zhí)行查詢數(shù)據(jù)庫的語句生成。其中,關于這五個接口之間的相互關系主要如下圖2所示。另外,關于Java 數(shù)據(jù)庫技術訪問數(shù)據(jù)庫的主要流程為:“加載數(shù)據(jù)庫驅動程序” →“ 建立與數(shù)據(jù)庫的連接” →“ 執(zhí)行SQL 語句” →“ 處理結果” →“ 釋放數(shù)據(jù)庫連接”。
二、關于數(shù)據(jù)庫框架模型的研究設計
(一)數(shù)據(jù)庫框架模型
java的面向對象思想主要是sun的JDK,其他的框架只不過是對底層的東西的一種封裝,更加方便使用而已。但是,依照上文之中關于框架技術以及Java 數(shù)據(jù)庫技術的概述以及兩者之間的關系,設計者構建出數(shù)據(jù)庫框架模型如圖3所示。
如圖3所示,數(shù)據(jù)庫框架主要是由一個接口以及四個類組成的。其中,關于Parser接口,主要是用來定義了一個解析器的標準。關于“parse()方法”可以幫助實現(xiàn)對數(shù)據(jù)庫配置文件進行解析,同時還可以利用“DatabaseConfigInfor”實現(xiàn)對數(shù)據(jù)庫配置信息的包裝,有助于實現(xiàn)數(shù)據(jù)庫配置信息的傳輸。另外,對于四個類而言:ParserAdapter類,屬于抽象類,有助于Parser 接口方法的空實現(xiàn),可以防止程序員創(chuàng)建該類的對象。XMLParser類,屬于非抽象類,主要用來實現(xiàn)對XML配置文件的解析作用。Database ConfigInfor類,主要是用來實現(xiàn)數(shù)據(jù)庫配置信息的存儲。DBConnection類,主要用來實現(xiàn)操作數(shù)據(jù)庫。在進行操作的過程中,首先實現(xiàn)數(shù)據(jù)庫驅動程序的加載,繼而進行數(shù)據(jù)庫連接對象的創(chuàng)建[3]。
(二)Java數(shù)據(jù)庫連接
關于Java數(shù)據(jù)庫連接體系結構,主要是用來實現(xiàn)Java應用程序連接數(shù)據(jù)庫,它屬于一種標準的連接方法。對于Java程序員而言,數(shù)據(jù)庫連接過程中,最為重要的便是API,它可以有效的實現(xiàn)同數(shù)據(jù)庫之間的連接服務,同時它也是接口模型。盡管如此,API仍舊能夠幫助第三方中間件廠商以及數(shù)據(jù)庫廠商之間的連接,并且根據(jù)其為程序開發(fā)員提供專門的接口模型,繼而為連接提供標準的方法。另一方面,如ODBC之間的橋接等,都屬于Java數(shù)據(jù)庫連接的標準??傊P于Java數(shù)據(jù)庫連接,能夠真正的實現(xiàn)面向標準的目標以及高性能的接口定義。其中,關于Java數(shù)據(jù)庫連接應用程序的基本步驟主要如下:注冊驅動→建立數(shù)據(jù)庫連接→創(chuàng)建數(shù)據(jù)庫操作對象→執(zhí)行SQL→處理結果集→關閉JDBC對象。
三、基于Java的數(shù)據(jù)庫應用框架的設計實現(xiàn)
四、小結
綜上所述,筆者主要分析了數(shù)據(jù)庫框架的設計以及開發(fā)過程,為了防止開發(fā)者在進行操作數(shù)據(jù)庫代碼的編寫時出現(xiàn)重復現(xiàn)象,設計者可以把其應用在數(shù)據(jù)庫的應用系統(tǒng)開發(fā)之中。而且,根據(jù)筆者的實驗,在Java 應用系統(tǒng)的開發(fā)之中,上述方法也是十分有效,然而,在利用的過程之中,設計者必須編寫相應的數(shù)據(jù)訪問對象類。總之,想要實現(xiàn)框架的擴展,需要設計者進一步的研究。
參考文獻
[1] 羅金濤,李躍新.基于Java的數(shù)據(jù)庫連接池技術的算法實現(xiàn)[J].硅谷,2009(05):12-13.
[2] 褚媛,等.基于Java的數(shù)據(jù)庫連接池技術在即時通信系統(tǒng)中的應用[J].電腦開發(fā)與應用, 2008(02):69-71.
[3] 朱超,王一舉.基于JAVA的短消息系統(tǒng)的設計與實現(xiàn)[J].孝感學院學報,2009(06):21-22.