網(wǎng)站:
JavaEye 作者:
liuwei1981
發(fā)表時間: 2007-08-23 09:45 此文章來自于
http://www.JavaEye.com
聲明:本文系JavaEye網(wǎng)站原創(chuàng)文章,未經(jīng)JavaEye網(wǎng)站或者作者本人書面許可,任何其他網(wǎng)站嚴禁擅自發(fā)表本文,否則必將追究法律責(zé)任!
原文鏈接:
http://liuwei1981.javaeye.com/blog/115574
該系統(tǒng)軟件框架對sql操作進行了封裝,并提供了一批API幫助客戶程序員更為簡便的進行數(shù)據(jù)庫操作。這些api包括:
-
統(tǒng)一的DbConnection管理,客戶程序員只需將要執(zhí)行的sql語句作為參數(shù)傳入,api會將結(jié)果列表以二維字符串?dāng)?shù)組的形式返回。api提供特殊的方法,例如翻頁處理等都提供了相應(yīng)的處理。
-
按照功能劃分dao操作類。類的編寫有自身設(shè)計的一套規(guī)范。首先該功能的dao操作類設(shè)計為接口,然后按照數(shù)據(jù)庫的不同特殊處理實現(xiàn)該接口。例如:接口為TestDAO.java,使用oracle數(shù)據(jù)庫實現(xiàn)該接口,為OraTestDAO.java,使用sqlserver數(shù)據(jù)庫實現(xiàn)該接口,為SqlTestDAO.java。dao操作類直接操作框架對數(shù)據(jù)庫進行操作的DbConnection對象進行業(yè)務(wù)處理。
-
所有的接口實現(xiàn)的dao操作類在web服務(wù)器的一個特殊目錄中存在一個xml格式的配置文件。
xml 代碼
- <DAOLIST>
- <DAO>
- <NAME>testdaoNAME>
- <CLASSNAME>com.test.dao.OraTestDAOCLASSNAME>
- <DESCRIPTION>測試DESCRIPTION>
- DAO>
- DAOLIST>
-
在web服務(wù)器的同時,會同時啟動一個線程,讀入該xml文件,并讀入數(shù)據(jù)庫配置參數(shù)文件。與hibernate這個框架相比,這個dao管理只能在web應(yīng)用中使用。
-
前幾篇提到的web層使用的Ctrl控制類,在框架設(shè)計中不能直接操作dao操作類,而是存在一個中間層,包括BO類和VOListIter類,編寫這兩個類都需實現(xiàn)框架提供的接口。bo類主要包括數(shù)據(jù)庫的除獲取數(shù)據(jù)列表以外的所有操作,如錄入,修改等,VOListIter類專門為實現(xiàn)數(shù)據(jù)列表翻頁設(shè)計,通過該類獲取翻頁數(shù)據(jù)列表方法,需要首先聲明一個長度為5的Integer類型的數(shù)組,DbConnection類的該方法需要這個參數(shù),將該列表的當(dāng)前頁數(shù)和最大頁數(shù)返回。
這個數(shù)據(jù)庫框架還提供了一些方便編寫代碼的操作,例如拼裝sql語句,提供了一個這樣的方法:MakeUp類。代碼如下:
java 代碼
- String sql = " INSERT INTO test_t (testid,testname) "
- + " VALUES (@,'#') ";
-
- String[] key = {
- test.getId(),test.getName()
- };
- sql = MakeUp.makeUp(key, sql);
這個makeUp方法會將sql語句拼裝好,@表示數(shù)字占位,#表示字符占位。
這個系統(tǒng)的數(shù)據(jù)庫操作管理大致就是這樣了,比較簡單,總的來說就是對dbconncetion 操作進行了重新封裝,方便客戶程序員的使用。
|
《 總結(jié)一下維護了一年的一個軟件系統(tǒng)的軟件體系(五) 》 的評論也很精彩,歡迎您也添加評論。查看詳細 >>
JavaEye推薦
上海樂福狗信息技術(shù)有限公司:誠聘技術(shù)經(jīng)理和開發(fā)工程師
免費下載IBM社區(qū)版軟件--它基于開放的標準,支持廣泛的開發(fā)類型,讓您的開發(fā)高效自主!
京滬穗蓉四地免費注冊,SOA技術(shù)高手匯聚交鋒.
上海:優(yōu)秀公司德比:高薪誠聘 資深Java工程師
廣州:優(yōu)易公司:誠聘Java工程師,開發(fā)經(jīng)理
上海:尤恩斯國際集團:誠聘開發(fā)工程師
北京:優(yōu)秀公司NHNChina招聘:WEB開發(fā),系統(tǒng)管理,JAVA開發(fā), DBA
文章來源:
http://liuwei1981.javaeye.com/blog/115574
posted on 2007-08-23 09:45
皇馬嘯西風(fēng) 閱讀(170)
評論(0) 編輯 收藏