999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

Java Web程序運(yùn)用中泛型DAO的作用

2017-04-13 19:28:30胡蕊蕊
電子測(cè)試 2017年4期
關(guān)鍵詞:程序設(shè)計(jì)

胡蕊蕊

(西京學(xué)院,陜西西安,710123)

Java Web程序運(yùn)用中泛型DAO的作用

胡蕊蕊

(西京學(xué)院,陜西西安,710123)

將泛型DAO模式加入到Java Web程序中,能夠使Java Web程序具有更好的維護(hù)性、擴(kuò)展性和復(fù)用性,能夠改善傳統(tǒng)Java Web程序中的缺點(diǎn),運(yùn)算性能得到大幅度的提高,同時(shí)還增強(qiáng)了程序的安全性。

Spring框架;DAO模式;Java Web程序

0 引言

在互聯(lián)網(wǎng)領(lǐng)域中運(yùn)用的Java技術(shù)就稱為Java Web技術(shù)。隨著人們對(duì)軟件功能需求的不斷提高,Java技術(shù)也在不斷的升級(jí)和改造中。泛型DAO模式的開(kāi)發(fā)是以Java泛型類的提出為基礎(chǔ)的,傳統(tǒng)Java程序開(kāi)發(fā)框架結(jié)構(gòu)為三層框架結(jié)構(gòu),包括JPA層,Spring層以及Struts層等,在程序?qū)嶋H運(yùn)行中,這種框架結(jié)構(gòu)存在很多的不足,無(wú)法保證程序運(yùn)行的安全,因此本文提出將DAO模式應(yīng)用到Java Web程序開(kāi)發(fā)中,改善傳統(tǒng)Java技術(shù)安全性、兼容性以及復(fù)用性差等缺點(diǎn)。

1 DAO模式

程序和對(duì)象之間交流的第一窗口就是由數(shù)據(jù)訪問(wèn)窗口,也就是DAO。該數(shù)據(jù)訪問(wèn)窗口能夠?qū)崿F(xiàn)訪問(wèn)持久化數(shù)據(jù)和數(shù)據(jù)之間關(guān)系的映射。數(shù)據(jù)訪問(wèn)窗口是數(shù)據(jù)資料庫(kù)的上層,同時(shí)也是業(yè)務(wù)邏輯的下層。這就可以將業(yè)務(wù)邏輯處理和數(shù)據(jù)訪問(wèn)操作分割開(kāi)來(lái),通過(guò)這種方法減少訪問(wèn)層和業(yè)務(wù)層之間的重疊和交叉。訪問(wèn)Access數(shù)據(jù)庫(kù)的一種比較有效的方法就是利用DAO模式。除此之外,大量文件需要儲(chǔ)存、程序可讀性差、代碼繁瑣是困擾當(dāng)前程序開(kāi)發(fā)的最大問(wèn)題,急需設(shè)計(jì)人員進(jìn)行解決。而該模式的引入能夠明顯增強(qiáng)程序的可讀性、提高程序的安全性,實(shí)現(xiàn)面向接口的多態(tài)化的編程。

2 泛型DAO模式的設(shè)計(jì)

傳統(tǒng)Jave技術(shù)架構(gòu)建立方法為:首先分別進(jìn)行數(shù)據(jù)訪問(wèn)層、業(yè)務(wù)處理層以及表示層的編程,之后在每一層中設(shè)計(jì)專門的接口。而在泛型DAO模式中,數(shù)據(jù)訪問(wèn)層和業(yè)務(wù)處理層是相連接的,并且業(yè)務(wù)邏輯層的接口位于數(shù)據(jù)訪問(wèn)層中。

Hibernate框架是進(jìn)行數(shù)據(jù)訪問(wèn)層搭建的主要框架,將Fa?ade接口和模塊入口相接,之后在對(duì)其實(shí)現(xiàn)類進(jìn)行定義和屬性規(guī)定,最后進(jìn)行接口的設(shè)計(jì)。數(shù)據(jù)庫(kù)的刷星、閱讀、創(chuàng)建等操作都由其完成。利用EHD操作和泛型學(xué)習(xí)法可以進(jìn)行實(shí)體DAO模式的創(chuàng)建,這樣,CRUD等操作也就會(huì)通過(guò)實(shí)體DAO模式實(shí)現(xiàn)。

泛型DAO模式是對(duì)傳統(tǒng)DAO模式的修改和升級(jí),其主要內(nèi)容就是進(jìn)行DAO模式的抽象化設(shè)計(jì),同時(shí)進(jìn)行抽象化DAO模式的實(shí)現(xiàn),CRUD操作是抽象化DAO模式實(shí)現(xiàn)的主要內(nèi)容,通常以下幾種方法完成抽象化DAO模式的實(shí)現(xiàn):一是在實(shí)現(xiàn)方法直接進(jìn)行泛型的定義;二是在基本的類和接口上直接進(jìn)行泛型的定義。

泛型DAO模式的引入使程序具有更好的復(fù)用性,程序設(shè)計(jì)語(yǔ)言變得更為簡(jiǎn)單,在程序運(yùn)行結(jié)束之后進(jìn)行類型的檢查,通過(guò)這種方法避免程序在運(yùn)行過(guò)程中產(chǎn)生的各種突發(fā)問(wèn)題,使程序的運(yùn)行速度得到了明顯的改善。Entity類的管理是由泛型模式執(zhí)行,如果選址該類中的CRUD操作不僅可以使程序具有良好的性能,而且還可以簡(jiǎn)化編程過(guò)程,使編程出錯(cuò)率大大降低。泛型DAO模式能夠有效的完成類之間的轉(zhuǎn)換,減少類轉(zhuǎn)換的錯(cuò)誤,而且儲(chǔ)存位置選擇性更為廣泛,各種模塊和子類的存儲(chǔ)時(shí)間更為長(zhǎng)久。

3 泛型DAO模式的設(shè)計(jì)

3.1 查詢功能設(shè)計(jì)

查詢功能的設(shè)計(jì)是泛型模式開(kāi)發(fā)過(guò)程中難點(diǎn),泛型模式中進(jìn)行所有程序設(shè)計(jì)時(shí)一個(gè)必須的模塊就是查詢模塊,主要的查詢方法包括以下三種:一是根據(jù)條件進(jìn)行搜索結(jié)果的查詢;二是根據(jù)排列順序進(jìn)行搜索結(jié)果的查詢;三是將頁(yè)碼分開(kāi)進(jìn)行搜索結(jié)果的查詢,下面分別對(duì)這三種查詢方法進(jìn)行詳細(xì)的論述。

(1)根據(jù)條件進(jìn)行搜索結(jié)果的查詢,在對(duì)搜索結(jié)果進(jìn)行查詢時(shí),可以使用不同的條件,所以應(yīng)該對(duì)每種條件的查詢方式進(jìn)行探討,同時(shí)通過(guò)Map映射來(lái)存儲(chǔ)這些條件和所對(duì)應(yīng)的查詢結(jié)果。通常而言,在一次查詢中,會(huì)有多種條件,一個(gè)條件是包含在另一個(gè)條件內(nèi)部的,只有完成了該條件的查詢,才能夠完成下一條件的查詢,所以在利用Map進(jìn)行查詢條件和查詢結(jié)果存儲(chǔ)的過(guò)程中,必須要按照一定的順序,此時(shí)就需要Map類的支持。

(2)根據(jù)排列順序進(jìn)行搜索結(jié)果的查詢,在進(jìn)行這種查詢時(shí),首先要對(duì)搜索結(jié)果進(jìn)行排序處理,通常是以用戶名為排列的關(guān)鍵字段,根據(jù)用戶名大小從大到小對(duì)搜索結(jié)果進(jìn)行排序。

(3)將頁(yè)碼分開(kāi)進(jìn)行搜索結(jié)果的查詢,在進(jìn)行這種類型查詢時(shí),首先要統(tǒng)計(jì)每種搜索結(jié)果出現(xiàn)的次數(shù),同時(shí)找出出現(xiàn)次數(shù)最多的搜索結(jié)果,之后要給出每一條搜索結(jié)果所對(duì)應(yīng)的具體位置。

3.2 主鍵查詢功能的設(shè)計(jì)

在進(jìn)行JavaEE程序設(shè)計(jì)中一種常見(jiàn)的設(shè)計(jì)模式就是泛型模式。傳統(tǒng)模式主要應(yīng)用于數(shù)據(jù)持久層中,數(shù)據(jù)持久層中不同的對(duì)象有著不同模式,每一種模式都有著不同的CRUD操作屬性,進(jìn)行DO操作。主鍵查詢?cè)贒AO模式中是不允許,但可以進(jìn)行其他類型的查詢,DO集合是DAO模式查詢結(jié)果返回值。泛型模式的出現(xiàn)可以很好的解決查詢安全性的問(wèn)題。在泛型模式中,使用的查詢接口為Java對(duì)象合集,其中包含查詢之前對(duì)象屬性和類型以及查詢之后對(duì)象屬性和類型,確保查詢的一致性,能夠使查詢過(guò)程中數(shù)據(jù)轉(zhuǎn)換的出錯(cuò)率降到最低。

4 整合傳統(tǒng)Java技術(shù)的三種架構(gòu)

傳統(tǒng)Java技術(shù)的三種框架,這三種框架分別為JPA框架、Spring框架以及Struts框架。在泛型模式中,結(jié)構(gòu)層次分別為:第一層為數(shù)據(jù)源層;第二層為服務(wù)層;第三層為動(dòng)作層,下面分別對(duì)這三種層次進(jìn)行論述。

4.1 數(shù)據(jù)源層

Spring架構(gòu)中主要的數(shù)據(jù)實(shí)體為事物管理器、實(shí)體管理器以及配置數(shù)據(jù)等,而JPA架構(gòu)中主要的數(shù)據(jù)實(shí)體為持久化單元。

4.2 用戶實(shí)體的建立

在進(jìn)行用戶實(shí)體構(gòu)建時(shí),首先需要在數(shù)據(jù)庫(kù)中進(jìn)行用戶數(shù)據(jù)表的構(gòu)建,表中包含了用戶實(shí)體,用戶實(shí)體的各種屬性都要添加到用戶數(shù)據(jù)表中,同時(shí)添加數(shù)據(jù)收集和重置操作數(shù)據(jù),并對(duì)數(shù)據(jù)實(shí)體和數(shù)據(jù)映射之間的關(guān)系進(jìn)行注釋和說(shuō)明。

4.3 構(gòu)建程序業(yè)務(wù)層

程序業(yè)務(wù)層的主要作用就是進(jìn)行業(yè)務(wù)邏輯關(guān)系的處理,一般業(yè)務(wù)層構(gòu)建的方法就是在DAO模式下進(jìn)行數(shù)據(jù)源和操作屬性關(guān)系映射的定義。泛型模式是傳統(tǒng)模式一種抽象化的處理方法,這種方法優(yōu)點(diǎn)包括以下三點(diǎn):一是操作簡(jiǎn)單;二是設(shè)計(jì)方便;三是操作效率較高。

4.4 進(jìn)行對(duì)象動(dòng)作的定義

在spring框架中進(jìn)行對(duì)象動(dòng)作的定義,同時(shí)將對(duì)象動(dòng)作添加到對(duì)象服務(wù)當(dāng)中。

5 運(yùn)行效果

本文在同一程序設(shè)計(jì)中分別使用了傳統(tǒng)模式以及改進(jìn)之后的泛型模式,它們的運(yùn)行結(jié)果如下。

(1)利用傳統(tǒng)模式編寫的程序在進(jìn)行文件類型設(shè)計(jì)和屬性提取時(shí),需要添加人工動(dòng)作,而且查詢結(jié)果和過(guò)程中保密性差,安全隱患較多,編程語(yǔ)言復(fù)雜,較難讀懂,編程代碼龐大冗雜。(2)泛型模式所編寫的程序具有更好的安全性和保密性,信息被竊取的可能性大大降低,并且和傳統(tǒng)模式相比,泛型模式編寫的程序文件數(shù)量更少,可讀性更加,代碼得到了很大的簡(jiǎn)化。

6 總結(jié)

泛型DAO模式整合了傳統(tǒng)Java程序開(kāi)發(fā)框架中的三種層次,使程序開(kāi)發(fā)具有更為優(yōu)良的性能,程序運(yùn)行更為安全,信息傳遞保密性更強(qiáng),代碼具有更好的可讀性,所以泛型DAO模式將是未來(lái)使用最多的一種的模式。

[1]孟晨,趙春亮,張建國(guó).泛型DAO模式在Java Web開(kāi)發(fā)中的應(yīng)用[J].計(jì)算機(jī)應(yīng)用與軟件,2012,(01):175-177+210.

Java Web program using generic DAO

Hu Ruirui
(Xijing University,Xi'an Shaanxi,710123)

Join Java generic DAO mode Web programs, promoting Java Web programs can improve the shortcomings of traditional Java Web programs, performance is improved, but also enhances the safety of the procedure.

framework for Spring; DAO mode; Java Web program

T快速應(yīng)用開(kāi)發(fā)框架數(shù)據(jù)持久層的一種實(shí)現(xiàn)模式[J].電子科技大學(xué)

年期,2009.05.

猜你喜歡
程序設(shè)計(jì)
何為設(shè)計(jì)的守護(hù)之道?
《豐收的喜悅展示設(shè)計(jì)》
流行色(2020年1期)2020-04-28 11:16:38
試論我國(guó)未決羈押程序的立法完善
瞞天過(guò)海——仿生設(shè)計(jì)萌到家
失能的信仰——走向衰亡的民事訴訟程序
“程序猿”的生活什么樣
設(shè)計(jì)秀
海峽姐妹(2017年7期)2017-07-31 19:08:17
有種設(shè)計(jì)叫而專
Coco薇(2017年5期)2017-06-05 08:53:16
英國(guó)與歐盟正式啟動(dòng)“離婚”程序程序
創(chuàng)衛(wèi)暗訪程序有待改進(jìn)
主站蜘蛛池模板: 四虎精品黑人视频| 天天干天天色综合网| 日韩在线2020专区| 欧美精品1区2区| 久草国产在线观看| 巨熟乳波霸若妻中文观看免费 | 日本欧美成人免费| 亚洲成在人线av品善网好看| 国产激情影院| 新SSS无码手机在线观看| 亚洲 日韩 激情 无码 中出| 最新日韩AV网址在线观看| 亚洲国产欧美自拍| 亚洲欧洲日韩综合| 久久人午夜亚洲精品无码区| 欧美在线综合视频| www.国产福利| 国产成人永久免费视频| 国产福利在线免费| 欧洲免费精品视频在线| 国产又大又粗又猛又爽的视频| 白丝美女办公室高潮喷水视频| 亚洲一区波多野结衣二区三区| 亚洲Aⅴ无码专区在线观看q| 91成人在线免费观看| 最新国产精品鲁鲁免费视频| 久久天天躁狠狠躁夜夜躁| 国产女人喷水视频| 五月婷婷综合色| 亚洲天堂网在线播放| 久久午夜夜伦鲁鲁片不卡| 久久网欧美| 日韩欧美国产中文| 国产高潮流白浆视频| 青青久久91| 免费无遮挡AV| 国产剧情一区二区| 国产视频大全| 在线一级毛片| 国产乱人伦偷精品视频AAA| 亚洲区一区| 日本欧美在线观看| 欧美日韩福利| 国产综合网站| 国产一级毛片高清完整视频版| 久久99蜜桃精品久久久久小说| 国产精品第一区在线观看| 激情综合图区| 女人天堂av免费| 久久国产高清视频| 全部毛片免费看| 狠狠色丁香婷婷综合| 无码'专区第一页| 精品三级网站| 国模在线视频一区二区三区| 亚洲六月丁香六月婷婷蜜芽| 54pao国产成人免费视频| 91黄色在线观看| 国产粉嫩粉嫩的18在线播放91| 国产精品极品美女自在线| 夜夜操国产| a在线亚洲男人的天堂试看| 91久久偷偷做嫩草影院免费看| 久久久久久久久亚洲精品| 97久久人人超碰国产精品| 久久这里只精品热免费99| 色综合中文| 玖玖精品视频在线观看| 老司国产精品视频91| 欧美a在线视频| 亚洲 欧美 日韩综合一区| 爽爽影院十八禁在线观看| 手机在线看片不卡中文字幕| 国内精自视频品线一二区| 日韩午夜片| 免费国产无遮挡又黄又爽| 成人中文在线| 国产拍揄自揄精品视频网站| 伊人无码视屏| 国产欧美精品专区一区二区| 黄色国产在线| 国产凹凸视频在线观看|