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