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

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

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

    氧氣中毒 - J2EE

    爪吐奕奕征途
    posts - 24, comments - 10, trackbacks - 0, articles - 0
       :: 首頁 :: 新隨筆 ::  ::  :: 管理

    一、 Struts 的與 Web App 的關(guān)系

    ???? struts叫做web framework,其主要基于web層的應(yīng)用系統(tǒng)開發(fā)。按照J2EE Architecture的標(biāo)準(zhǔn),struts應(yīng)當(dāng)和jsp/servlet一樣,存在于web container一層。

    3.jpg


    二、 Struts 的體系結(jié)構(gòu)
    ?????? 我們說struts frameworkMVC 模式的體現(xiàn),下面我們就從分別從模型、視圖、控制來看看struts的體系結(jié)構(gòu)(Architecture)。下圖顯示了struts framework的體系結(jié)構(gòu)響應(yīng)客戶請(qǐng)求時(shí)候,各個(gè)部分工作的原理。

    2.jpg

    1、 從視圖角度( View

    首先, Struts 提供了 Java org. apache.struts.action.ActionForm Java 開發(fā)者將該類細(xì)分來創(chuàng)建表單 bean 。在運(yùn)行時(shí),該 bean 有兩種用法:
    ? 當(dāng) JSP 準(zhǔn)備相關(guān)的 HTML ,表單以進(jìn)行顯示時(shí), JSP 將訪問該

    bean( 它保存要放入表單中的值 ) 。那些值是從業(yè)務(wù)邏輯或者是從先前的用戶輸入來提供的。

    ????????? ? 當(dāng)從 Web 瀏覽器中返回用戶輸入時(shí),該 bean 將驗(yàn)證并保存該輸入以供業(yè)務(wù)邏輯或 ( 如果驗(yàn)證失敗的話 ) 后續(xù)重新顯示使用。

    其次, Struts 提供了許多定制 JSP 標(biāo)記,它們的使用簡(jiǎn)單,但是它們?cè)陔[藏信息方面功能強(qiáng)大。例如,除了 bean 名稱和給定 bean 中每個(gè)段的名稱之外,頁面設(shè)計(jì)者不需要知道有關(guān)表單 bean 的更多信息。

    2、 從模型角度( Model

    Struts 雖然不直接有助于模型開發(fā)。 Struts中,系統(tǒng) 模型 的狀態(tài)主要由ActiomForm Bean和值對(duì)象體現(xiàn)。

    3、 從控制器角度( Controller

    ??? Struts framework中, Controller主要是ActionServlet,但是對(duì)于業(yè)務(wù)邏輯的操作則主要由ActionActionMappingActionForward這幾個(gè)組件協(xié)調(diào)完成(也許這幾個(gè)組件,應(yīng)該劃分到模型中的業(yè)務(wù)邏輯一塊)。其中,Action扮演了真正的控制邏輯的實(shí)現(xiàn)者,而ActionMappingActionForward則指定了不同業(yè)務(wù)邏輯或流程的運(yùn)行方向。


    ?
    三、基本組件包

    整個(gè)struts大約有15包,近200個(gè)類所組成,而且數(shù)量還在不斷的擴(kuò)展。在此我們不能一一介紹,只能列舉幾個(gè)主要的簡(jiǎn)要的介紹一下。下表說明了目前struts api中基本的幾個(gè)組件包,包括action,actions,config,util,taglib,validator。下圖則顯現(xiàn)了這幾個(gè)組件包之間的關(guān)系。其中action是整個(gè)struts framework的核心

    org.apache.struts.action

    基本上,控制整個(gè)struts framework的運(yùn)行的核心類、組件都在這個(gè)包中,比如我們上面提到的控制器ActionServlet。已經(jīng)Action,ActionForm,ActionMapping等等。struts1.11.0多了 DynaActionForm 類。增加了動(dòng)態(tài)擴(kuò)展生成FormBean功能

    org.apache.struts.actions

    這個(gè)包是主要作用是提供客戶的http請(qǐng)求和業(yè)務(wù)邏輯處理之間的特定適配器轉(zhuǎn)換功能,而1.0版本中的部分動(dòng)態(tài)增刪FromBean的類,也在struts1.1中被Action包的DynaActionForm組件所取代

    org.apache.struts.config

    提供對(duì)配置文件struts-config.xml元素的映射。這也是sturts1.1中新增的功能

    org.apache.struts.util

    Strtuts 為了更好支持web application的應(yīng)用,體統(tǒng)了一個(gè)些常用服務(wù)的支持,比如Connection PoolMessage Source。詳細(xì)信息請(qǐng)參考

    http://jakarta.apache.org/struts/api/org/apache/struts/util/package-summary.html

    org.apache.struts.taglib

    這不是一個(gè)包,而是是一個(gè)客戶標(biāo)簽類的集合。下面包括Bean TagsHTML TagsLogic TagsNested TagsTemplate Tags這幾個(gè)用于構(gòu)建用戶界面的標(biāo)簽類。

    org.apache.struts.validator

    Struts1.1 framework 中增加了validator framework,用于動(dòng)態(tài)的配置from表單的驗(yàn)證。詳細(xì)信息請(qǐng)參閱 http://home.earthlink.net/~dwinterfeldt/

    1.jpg


    ?

    ?

    主站蜘蛛池模板: 久久亚洲精品成人AV| 亚洲熟妇无码AV| 久久久无码精品亚洲日韩按摩| 男人扒开添女人下部免费视频| 怡红院免费的全部视频| 久久午夜免费视频| 亚洲日韩在线中文字幕第一页| 亚洲国产高清视频| 美国毛片亚洲社区在线观看| 久久精品视频免费播放| 国产成人免费一区二区三区| 亚洲黄色在线视频| 成av免费大片黄在线观看| 免费无码一区二区三区蜜桃大 | 免免费国产AAAAA片| 337p日本欧洲亚洲大胆艺术| 97青青草原国产免费观看| jizzjizz亚洲| 亚洲人成网国产最新在线| 国产精品99精品久久免费| 亚洲AV午夜成人片| www一区二区www免费| 国产在线观看免费完整版中文版| 国产av无码专区亚洲av毛片搜 | 四虎成人精品国产永久免费无码| 成人免费AA片在线观看| 亚洲AV无码专区国产乱码4SE| 99ee6热久久免费精品6| avtt天堂网手机版亚洲| 久久九九兔免费精品6| 亚洲VA中文字幕无码毛片| 69pao强力打造免费高清| 亚洲国产综合专区在线电影| 午夜性色一区二区三区免费不卡视频| 国产成人亚洲综合一区| 亚洲乱码日产精品a级毛片久久| 亚洲av乱码中文一区二区三区| 国产香蕉九九久久精品免费| 亚洲国产综合自在线另类| 最近中文字幕免费mv在线视频| 亚洲av永久无码精品表情包|