日韩天天综合网_野战两个奶头被亲到高潮_亚洲日韩欧美精品综合_av女人天堂污污污_视频一区**字幕无弹窗_国产亚洲欧美小视频_国内性爱精品在线免费视频_国产一级电影在线播放_日韩欧美内地福利_亚洲一二三不卡片区

Struts初級教程(6)-使用模塊_JSP教程

編輯Tag賺U幣
教程Tag:暫無Tag,歡迎添加,賺取U幣!

推薦:Struts初級教程(5)-表單驗證
應(yīng)該清楚在Struts框架中,使用ActionFormBean來實現(xiàn)應(yīng)用程序系統(tǒng)的非持久性數(shù)據(jù)存儲和維護功能,它采用了自動填充屬性和調(diào)用的機制。所以必須繼承ActionForm類,并且包涵用戶表單輸入的屬性,以及相應(yīng)的get方法和set方法。另外,還可以根據(jù)需要重寫父類的res

      模塊化編程是目前趨勢,即把項目分成了多個模塊交由不同小組開發(fā)。
      使用Struts框架時,每個請求都由Action去處理,并且還要在struts-config.xml中加以設(shè)定,這樣以來做小項目還行,在大型網(wǎng)站的開發(fā)中,有很多小組負責(zé)不同的模塊,如果每一個小組要對一個struts-config.xml進行設(shè)定,將會導(dǎo)致struts-config.xml的版本控制問題。
     所以為了解決這個問題,可以為每個小組分配不同的struts-config.xml設(shè)定文件,方法是在ActionServlet參數(shù)的config參數(shù)后面加上后綴,如果是config/admin,那么相應(yīng)的配置文件的名字就是:struts-config-admin,他們的后綴名字必須對應(yīng),這樣才能映射上。

例如我們可以把后臺處理分配一個小組,設(shè)定具體代碼如下所示:web.xml
<servlet> 
    <servlet-name>action</servlet-name> 
    <servlet-class>org.apache.struts.action.ActionServlet</servlet-class> 
        <init-param> 
            <param-name>config</param-name> 
            <param-value>/WEB-INF/conf/struts-config.xml</param-value> 
        </init-param> 
        <init-param> 
            <param-name>config/admin</param-name> 
            <param-value>/WEB-INF/conf/struts-confg-admin.xml</param-value> 
        </init-param> 
        <init-param> 
                <param-name>debug</param-name> 
                <param-value>3</param-value> 
        </init-param> 
        <init-param> 
                <param-name>detail</param-name> 
                <param-value>3</param-value> 
        </init-param> 
        <load-on-startup>0</load-on-startup>
</servlet> 
       config/admin:指定了admin模塊的所使用的配置文件是struts-config-admin.xml,現(xiàn)在負責(zé)后臺模塊的開發(fā)人員只要管理自己的開發(fā)文檔設(shè)定就行了,就像前面所說的一樣,當(dāng)ActionServlet收到請求時,它是根據(jù)模塊你所指定的后綴,進行處理是哪個模塊的請求。
例如: 
       http://localhost:8080/strutsmodel/admin/admin.do
這個URL,表示請求由strutsmodel工程的admin環(huán)境的admin.do來處理這個請求。這樣以來前臺和后臺就分明了,各自開發(fā)各自的,各自管理自己的配置文件,達到松耦合的目的。
當(dāng)ActionServlet請求接收請求,它判斷URL中相對與context的前綴,例如上例中的admin,于是就知道應(yīng)該使用admin模塊。下面是struts-config-admin.xml:
……
<action 
    path="/admin" 
    type="org.zhoudq.webapp.action.AdminAction" > 
    <forward name="admin" path="/admin.jsp" />
</action>
……
這樣以來所有的path設(shè)定將自動被加上login前綴,例如必須使用以下的路徑才可以正確的請求到AdminAction:
http://localhost:8080/strutsmodel/admin/admin.do
在模塊中的Action在查找forward時,都是以所在模塊,查找對應(yīng)的struts-confg-XXX.xml的,例如上面的AdminAction在查找forward時,則會查找struts-config-admin.xml中的forward元素,也就是說,模塊中的forward對象的查找都是相對于模塊的路徑的,而不是相對與環(huán)境上下文。
那么我們模塊分配工作幾已經(jīng)搞定了,各個小組可以分別開工了,但是問題來了,那么如何從當(dāng)前的模塊換到另一個模塊呢?
當(dāng)您的項目分作很多個模塊時,在使用者點某個鏈接時,您有兩個方法可以在模塊之間切換。
一、方法一
是使用相對與環(huán)境上下文的路徑進行forward轉(zhuǎn)發(fā),您可以在當(dāng)前的struts-config-XX.xml如下設(shè)定,例如是:struts-config-admin.xml中加入:
<global-forwards> 
    <forward 
    name="switchModuleToFront" 
    contextRelative="true" 
    path="/front/login.do" 
    redirect="true"/>
</global-forwards>
這個是全局可以找到的forward中設(shè)定的,下面是在action元素中設(shè)定如何轉(zhuǎn)發(fā)模塊,代碼如下: 
       ……
<action 
    path="/admin" 
    type="org.zhoudq.webapp.action.AdminAction" > 
        <forward   
                name="admin" 
                contextRelative="true" 
                path="/front/login.do" 
                redirect="true"/>
</action> 
       ……
上面這種配置就是通過forward元素轉(zhuǎn)換到相應(yīng)的模塊,下面我們看另一種方法吧。
二、方法二 
       這種方法是我們通過配置Struts的一個特定的類SwitchAction,就能實現(xiàn)上面的要求了。并且需要兩個參數(shù):
1.    prefix:用來指定模塊的后綴名稱
2.    page:用來指定你的資源路徑。
例如: 
       …… 
              <action-mappings> 
                  <action 
                  path="/switch" 
                  type="org.apache.struts.actions.SwitchAction"/>
</action-mappings> 
       ……
例如:
http://localhost:8080/strutsmodel/switch.do?prefix=/admin&page=/admin.do 是訪問我們后臺模塊的admin.do資源。

分享:Struts初級教程(4)-對國際化的支持
隨著全球經(jīng)濟的在體化趨勢,網(wǎng)頁設(shè)計開發(fā)者應(yīng)該開發(fā)出支持多國語言、國家化的web應(yīng)用程序。就是一個web應(yīng)用程序在運行時能夠根據(jù)客戶端請求所來自的國家和語言的不同顯示不同的用戶界面。這樣當(dāng)需要在應(yīng)用程序中添加對一種新的語言的支持時,不需要對已有的軟

來源:模板無憂//所屬分類:JSP教程/更新時間:2010-03-23
相關(guān)JSP教程