• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      Java Web程序運用中泛型DAO的作用

      2017-04-13 19:28:30胡蕊蕊
      電子測試 2017年4期
      關(guān)鍵詞:程序開發(fā)實體框架

      胡蕊蕊

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

      Java Web程序運用中泛型DAO的作用

      胡蕊蕊

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

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

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

      0 引言

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

      1 DAO模式

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

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

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

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

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

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

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

      3.1 查詢功能設(shè)計

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

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

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

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

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

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

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

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

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

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

      4.2 用戶實體的建立

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

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

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

      4.4 進行對象動作的定義

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

      5 運行效果

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

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

      6 總結(jié)

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

      [1]孟晨,趙春亮,張建國.泛型DAO模式在Java Web開發(fā)中的應(yīng)用[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)用開發(fā)框架數(shù)據(jù)持久層的一種實現(xiàn)模式[J].電子科技大學(xué)

      年期,2009.05.

      猜你喜歡
      程序開發(fā)實體框架
      框架
      廣義框架的不相交性
      前海自貿(mào)區(qū):金融服務(wù)實體
      中國外匯(2019年18期)2019-11-25 01:41:54
      APP應(yīng)用程序開發(fā)模式探究
      電子制作(2019年19期)2019-11-23 08:42:02
      基于TestStand的自動檢測程序開發(fā)
      電子測試(2018年11期)2018-06-26 05:56:16
      實體的可感部分與實體——兼論亞里士多德分析實體的兩種模式
      基于嵌入式系統(tǒng)Windows CE的應(yīng)用程序開發(fā)
      基于App inventor 2手機程序開發(fā)過程的學(xué)習(xí)與實——以“喵喵定時器”APP開發(fā)為例
      電子制作(2017年1期)2017-05-17 03:54:08
      振興實體經(jīng)濟地方如何“釘釘子”
      兩會進行時:緊扣實體經(jīng)濟“釘釘子”
      漳浦县| 武功县| 富宁县| 九寨沟县| 易门县| 奎屯市| 柘城县| 周宁县| 平阴县| 平湖市| 玛纳斯县| 监利县| 阿鲁科尔沁旗| 浦北县| 芦溪县| 同德县| 双桥区| 南昌市| 平阳县| 台东市| 井冈山市| 如皋市| 南宫市| 泰宁县| 仪陇县| 盘锦市| 柳州市| 宽城| 绵阳市| 泾源县| 连江县| 廉江市| 达尔| 定陶县| 西乡县| 博客| 唐海县| 巴彦县| 大余县| 辉县市| 兴国县|