<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    每日一得

    不求多得,只求一得 about java,hibernate,spring,design,database,Ror,ruby,快速開發(fā)
    最近關(guān)心的內(nèi)容:SSH,seam,flex,敏捷,TDD
    本站的官方站點(diǎn)是:顛覆軟件

      BlogJava :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
      220 隨筆 :: 9 文章 :: 421 評(píng)論 :: 0 Trackbacks
    key words: DAO模式

    今天在看一篇文章時(shí)提到了DAO,這個(gè)東西以前也經(jīng)常接觸,突然想回顧一下,于是打開Appfuse里看看dao模式(記憶中appfuse里就是很多的dao)

    截圖如下:
    appfusedao.png

    很清楚,左邊的部分是基礎(chǔ)模塊,原意是想讓右邊的DAO和實(shí)現(xiàn)能夠重用左邊的,可是我找了半天也沒(méi)看到需要重用左邊的東西,因?yàn)樵赾lient調(diào)用的所有方法中都是明確的getUser或removeUser,就是沒(méi)有g(shù)etObject或者removeObject,那么不禁要問(wèn),左邊的基礎(chǔ)dao和它的實(shí)現(xiàn)還有什么意義呢?所以我的第一想法就是把左邊的去掉得了,還好,果然有支持我想法的做法,打開springside,我們看到如下的結(jié)構(gòu):
    截圖2
    springside.png
    這里的做法更厲害,連interface也不要了,不過(guò)效果確實(shí)是很簡(jiǎn)潔,在bookmanager里完全重用了左邊的基本方法 :
    public?Book?get(Integer?id)?{
    ????????
    return?(Book)?super.get(id);
    ????}

    ????
    public?void?save(Book?book)?{
    ????????
    super.save(book);
    ????????logger.info(
    "保存圖書.圖書詳情:"?+?book.toString());
    ????}

    ????
    public?void?remove(Integer?id)?{
    ????????
    super.remove(id);
    ????????logger.info(
    "刪除圖書.圖書ID:"?+?id);
    ????}

    這是一個(gè)更務(wù)實(shí)的做法,如果你的項(xiàng)目并不是那么那么的復(fù)雜完全可以這么做,當(dāng)然要說(shuō)其有什么缺點(diǎn)顯然和沒(méi)有了interface的天生屬性決定了的,不可強(qiáng)求,若你對(duì)測(cè)試隔離面向接口以及你能想到的所有關(guān)于interface的好處,那就用你自己的方式吧。

    現(xiàn)在我在想一個(gè)問(wèn)題,難道appfuse里的繼承的基本關(guān)于object的做法就沒(méi)有地方可用了么?


    其時(shí)正好碰到j(luò)ava視線這一篇文章有點(diǎn)相關(guān),你可以參考一下:
    用DAO模式有什么好處?


    ps:
    以前是一個(gè)基本的dao,然后n個(gè)業(yè)務(wù)dao繼承于這個(gè)基本dao,現(xiàn)在提供一個(gè)通用dao,每個(gè)要用到的地方直接繼承用就是了,更務(wù)實(shí)了!
    不過(guò),有一個(gè)小小的瑕疵,就是對(duì)于service中類似getUserByName或者getPeopleByEmail方法中需要提供給dao一個(gè)sql語(yǔ)句,從mvc的角度看,在service中看到了db層,有點(diǎn)不雅,不過(guò)綜合來(lái)看這個(gè)還是可以或略,不要專牛角尖嘛? :)

    posted on 2006-09-21 16:05 Alex 閱讀(2447) 評(píng)論(0)  編輯  收藏 所屬分類: design
    主站蜘蛛池模板: 88av免费观看入口在线| 久久精品国产精品亚洲色婷婷| 久久精品电影免费动漫| 亚洲av综合日韩| 亚洲一区电影在线观看| 久久夜色精品国产亚洲AV动态图 | yy一级毛片免费视频| 亚洲五月丁香综合视频| 亚洲精品在线观看视频| 免费大片黄在线观看yw| a毛片免费全部在线播放** | 四虎成人免费网站在线| 二级毛片免费观看全程| 亚洲女女女同性video| ZZIJZZIJ亚洲日本少妇JIZJIZ | 亚洲欧美黑人猛交群| 亚洲婷婷天堂在线综合| 亚洲最大成人网色| 情人伊人久久综合亚洲| 自拍偷自拍亚洲精品被多人伦好爽| 成人毛片视频免费网站观看| 人成午夜免费视频在线观看| 67194成手机免费观看| 日本卡1卡2卡三卡免费| 久久久精品午夜免费不卡| 久久久WWW成人免费精品| 亚洲国产精品成人精品小说| 亚洲狠狠综合久久| 久久青青草原亚洲AV无码麻豆 | a级毛片在线免费看| 精品一区二区三区免费视频 | 国产亚洲精品岁国产微拍精品 | 久久99青青精品免费观看| 国产午夜无码精品免费看| 秋霞人成在线观看免费视频 | 伊人久久亚洲综合| 亚洲精品无码永久中文字幕| 亚洲人成在线播放网站| 亚洲AV色香蕉一区二区| 亚洲黄色在线电影| 国产亚洲精品免费视频播放|