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

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

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

    JAVA & FLEX

    一個分享java和flex開發(fā)經驗的空間

       :: 首頁 ::  :: 聯(lián)系 ::  :: 管理 ::
      26 隨筆 :: 2 文章 :: 44 評論 :: 0 Trackbacks

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

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

    posted on 2009-06-29 10:33 程序人生-天津 閱讀(958) 評論(0)  編輯  收藏 所屬分類: JPA
    主站蜘蛛池模板: 亚洲精品成人网站在线播放| 中文字幕久久亚洲一区| 亚洲色欲或者高潮影院| 男女作爱在线播放免费网站| 国产AV无码专区亚洲AV漫画| eeuss影院免费直达入口| 国产亚洲av人片在线观看| 国产免费人成视频在线播放播 | 中文字幕亚洲图片| 国产精品一区二区三区免费| 亚洲中文字幕不卡无码| 中文字幕久精品免费视频| 亚洲AV无码AV男人的天堂| 免费人成在线观看网站品爱网 | 又长又大又粗又硬3p免费视频 | 亚洲精品在线播放视频| 四虎永久在线精品免费网址| 亚洲av成人一区二区三区在线播放| 午夜亚洲福利在线老司机| 中文字幕在线免费观看视频| 亚洲国产成人片在线观看无码| 无人在线观看免费高清| 亚洲jjzzjjzz在线观看| 国产免费av片在线播放| 你好老叔电影观看免费| 久久亚洲精品无码aⅴ大香| 成人男女网18免费视频| 一级毛片试看60分钟免费播放| 亚洲人成电影福利在线播放| 成熟女人牲交片免费观看视频| 日本一区二区在线免费观看| 亚洲av最新在线网址| 黄+色+性+人免费| 污网站在线观看免费| 亚洲国产综合精品中文第一区| 扒开双腿猛进入爽爽免费视频 | 黄页网址在线免费观看| 1区1区3区4区产品亚洲| 四虎影视永久免费观看地址| 香港a毛片免费观看| 国产精品日本亚洲777|