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

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

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

    選擇java 進入自由開放的國度

    隨筆 - 49, 文章 - 3, 評論 - 154, 引用 - 1
    數據加載中……

    Struts學習心得之Struts流程篇(2)

        上一節我們搭建了Struts的運行和開發環境。這一節著重講述MVC的基本概念和與使用JSP/JavaBean模式開發Web應用的比較。
    (1)Tomcat的啟動。
            從上一節的Tomcat的配置文件中,我們可以看到關于Struts的配置,當Tomcat啟動時,會加載Struts的配置文件struts-config.xml,關于配置文件的內容請見
     (2)JSP/JavaBean開發Web應用
         在asp的時代,我們還沒有討論什么開發模式,也沒有顧及MVC(雖然MVC的概念早已出現)。用asp開發不外乎以下兩種情況,一、就是直接將代碼集成到asp文件中,經驗多的話,會將常用的函數放至一起,引用時只需include即可;二、對于復雜的應用,如文件上傳等,我們會用其他語音如VB、Delphi等寫一個控件(ADO即屬于此類)。
         當java流行,JSP逐漸成熟,也正是模式、框架流行的時代,所以我們不管是看java的類庫,還是看現在流行的框架,無一沒有模式的存在。當你初接觸JSP的時候,就可以看到書上說“盡量少的在jsp中插入Java代碼”,這句話已是模式運用的端倪。
          下面我們先不管MVC,先從JSP/JavaBean來看Web的開發。這種模式很想上面提到的asp開發的第二種情況,我們將業務邏輯放到JavaBean中,只用JSP去表示頁面。
           有過asp經驗都知道,在接收表單數據的時候,我們不得不一個一個將數據接收過來,以至于有很長的一段如:CustomId = request("CustomId")的代碼。而在JSP中,我們不用這么繁瑣,一個我們可以用EL直接表示即可,另外我們可以利用javaBean的introspection機制。直接將表單的數據映射到javabean的private變量中,當然javabean中必須包含getter和setter函數(有很幸運,很多的開發工具可以自動生成,又減少了工作量)。下面是一個示例。
           
    <jsp:useBean id="prof" scope="page" class="register.Profile" />
    <jsp:setProperty name="prof" property="*" />
           我們只要表單的action頁面中,直接插入以上代碼(這些代碼就不用解釋了吧),就可以將表單中的數據映射到register.Profile這個javabean中,所以我們可以在javabean中實現業務邏輯,譬如數據的插入、修改、刪除等。從而可以減小甚至消除JSP中的java代碼量。
     (3)MVC模式
         上面提到的JSP/JavaBean與MVC模式很接近,但是還有很多差別。前者,我們可以看出,在javabean中有很多的邏輯代碼,我們要控制頁面的跳轉,還是要在JSP中讀取javabean中的某些標志,嵌入java代碼來實現,這看起來顯得有些笨拙。我們是否能在JSP和javabean中再加一層,專門來實現跳轉即控制頁面的輸出呢?of course,這就是MVC的思想。
          Struts就是一個實現MVC模式的WEB開發框架,在Struts中用JSP作為Viewer,javabean繼承自ActionForm來映射JSP表單數據,用繼承自Action的類來實現Controller,而Model沒有特殊定義,它可以是EJB,普通Bean或者Web服務,總之Model中集成了業務邏輯的實現,在Controller中去調用,完成后Controller控制顯示頁面(jsp文件)。
         這樣一來,是不是業務流程非常的清晰?

         下面我們付諸實踐,實現一個用戶注冊的簡單實例!

    posted on 2005-05-03 09:35 soochow_hhb 以java論成敗 以架構論英雄 閱讀(1604) 評論(2)  編輯  收藏 所屬分類: Struts

    評論

    # re: Struts學習心得之Struts流程篇(2)   回復  更多評論   

    期待看到下一篇~~
    我正在學習ing
    2005-05-18 10:44 | Zero

    # re: Struts學習心得之Struts流程篇(2)   回復  更多評論   

    好的。。。有點收獲
    2006-08-23 10:41 | 李志華
    主站蜘蛛池模板: 亚洲成人免费电影| 久久久久久久久亚洲 | 成人免费视频国产| 无码午夜成人1000部免费视频| 亚洲精品无码久久久久| 国产乱子影视频上线免费观看| 最近中文字幕免费2019| 97国免费在线视频| 亚洲五月六月丁香激情| 亚洲色中文字幕无码AV| 亚洲人成亚洲人成在线观看| 国产亚洲精品国看不卡| 国精无码欧精品亚洲一区| 亚洲精品无码高潮喷水在线| 亚洲国产精品无码久久一线| 久久亚洲精品成人综合| 亚洲精品线在线观看| 亚洲制服丝袜一区二区三区| 亚洲 另类 无码 在线| 国产亚洲精品影视在线产品 | 国产亚洲精品91| a级毛片无码免费真人久久| 好紧我太爽了视频免费国产| 久久久99精品免费观看| 亚洲毛片免费视频| 精品国产免费观看久久久| 国产亚洲精品无码拍拍拍色欲| 久久久久亚洲AV成人无码| 亚洲国产午夜精品理论片| 色妞www精品视频免费看| 一个人免费观看www视频| 日本免费xxxx色视频| 成人片黄网站色大片免费观看APP| 91福利免费视频| 亚洲视频人成在线播放| 激情综合亚洲色婷婷五月APP | 黑人精品videos亚洲人| 亚洲爆乳无码专区www| 16女性下面无遮挡免费| 亚洲成?Ⅴ人在线观看无码| 亚洲国产成a人v在线|