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

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

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

    JAVA & FLEX

    一個分享java和flex開發經驗的空間

       :: 首頁 ::  :: 聯系 ::  :: 管理 ::
      26 隨筆 :: 2 文章 :: 44 評論 :: 0 Trackbacks

        早有就這個想法,將自己在項目中用到的ibaits經驗寫出來,恰巧看到了這個標題,所以重新開了一個帖子,歡迎大家討論一下。
        ibatis是一個輕量級的框架,他的優點在于Sql的自由化,這點我個人認為比hibernate好了很多,它比較靈活。但是問題來了,由于比較靈活,那么我們會面臨一個問題,我們如何來操控它才是最優的。也許這個問題本身就是一個沒有答案的問題,仁者見仁,智者見智,下面我只把自己的想法寫下來,希望能幫助到希望得到幫助的人。
        對于web的三層結構,我們數據的傳遞流是這個樣子的,Controller->service->dao->sqlmap->DB。那么我們該如何設計這個Bean呢,我認為這樣是最佳的組合。Control(Form)->service(Dto)->dao.這樣的好處在于,我們解耦了頁面和數據庫的對應關系。
        對于ibatis來說,單純的增刪改查,好像一般都是form和dto這兩個bean沒有什么區別,所以有些人可能會認為在control層和service層多出的form沒有什么用處,但是業務復雜以后,你就會知道頁面和數據庫的解耦,是多么的重要。ok,今天的話題并不是討論三層的bean設計,而是針對dto的設計。

        “iBATIS那一大堆的不倫不類的JavaBean“的作者可能還是一個在校的學生吧,這種看法,對于一個學生來講,已經是很不錯的。但是項目經驗告訴我們,Dto的設計,并沒有那么單純,并不是一個簡單的javaBean的問題,它涉及到了與數據庫方面相關的內容。例如,一個新增操作,它設計到三個表的插入,這個dto你怎么設計呢,并且這個插入的動作并不是全表的插入操作,我們該怎么辦。是針對所有需要插入的項,設計dto還是涉及到類似hibernate那樣的orm映射,還是利用繼承來設計呢?
        事實上,java的開發原則告訴我們,要將你實現的功能盡量拆分成元來進行,所謂的元,就是盡量的原子話,ok,遵循這個原則,我們需要將dto設計成orm的映射,即一個表對應一個dto。那么插入三個表,那就涉及到了三個表的dto數據來源問題,難道是我們需要將form中的每個字段都分別set到dto中嗎,有重復的話,我們不是白做了很多的工作?好的,我們用sqlmap中的語句來解決它就可以了。
    所以,ibatis中的bean設計,絕對不是不倫不類的javabean,而是要符合你本身框架和數據庫設計的綜合bean的設計。
    以上只是個人看法,希望大家指正。

    posted on 2009-06-29 10:33 程序人生-天津 閱讀(958) 評論(0)  編輯  收藏 所屬分類: JPA
    主站蜘蛛池模板: 国产在线精品观看免费观看| 伊人免费在线观看| 狠狠亚洲狠狠欧洲2019| 日本在线免费播放| 亚洲国产成人久久综合| 亚洲精品成人片在线观看精品字幕| 午夜爽爽爽男女免费观看影院| 亚洲综合欧美色五月俺也去| 免费午夜爽爽爽WWW视频十八禁| 久久久久国产精品免费看| 国产 亚洲 中文在线 字幕| 一本色道久久综合亚洲精品高清| 91精品免费国产高清在线| 免费一级做a爰片久久毛片潮| 亚洲理论片在线观看| 亚洲人成网站在线观看青青| 免费一本色道久久一区| 日本一区午夜艳熟免费| 国产成人精品久久亚洲高清不卡 | 18亚洲男同志videos网站| 国产大片线上免费看| 一级做a爰全过程免费视频| 高潮毛片无遮挡高清免费| 91情国产l精品国产亚洲区| 亚洲成人高清在线| 拍拍拍又黄又爽无挡视频免费| A片在线免费观看| 亚洲AV无码专区国产乱码不卡 | 亚洲人成网站在线播放影院在线| 男女交性永久免费视频播放| 无码国产精品一区二区免费vr | 亚洲中文字幕无码久久精品1| 成年人免费网站在线观看| 今天免费中文字幕视频| 色婷婷综合缴情综免费观看| 亚洲一卡一卡二新区无人区| 67pao强力打造67194在线午夜亚洲| 国产偷国产偷亚洲高清日韩| 免费亚洲视频在线观看| 免费无码又黄又爽又刺激| 久久免费看黄a级毛片|