欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費電子書(shū)等14項超值服

開(kāi)通VIP
struts 使用多個(gè)配置文件 struts
在Struts 1.0中,我們只能在web.xml中為ActionServlet指定一個(gè)配置文件,這對于我們這些網(wǎng)上的教學(xué)例子來(lái)說(shuō)當然沒(méi)什么問(wèn)題,但是在實(shí)際的應用開(kāi)發(fā)過(guò)程中,可能會(huì )有些麻煩。因為許多開(kāi)發(fā)人員都可能同時(shí)需要修改配置文件,但是配置文件只能同時(shí)被一個(gè)人修改,這樣肯定會(huì )造成一定程度上的資源爭奪,勢必會(huì )影響開(kāi)發(fā)效率和引起開(kāi)發(fā)人員的抱怨。

在Struts 1.1中,為了解決這個(gè)并行開(kāi)發(fā)的問(wèn)題,提出了兩種解決方案:

  1. 多個(gè)配置文件的支持
  2. 模塊的支持

 

支持多個(gè)配置文件,是指你能夠為ActionServlet同時(shí)指定多個(gè)xml配置文件,文件之間以逗號分隔,比如Struts提供的MailReader演示例子中就采用該種方法。

  <!-- Action Servlet Configuration -->            <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/struts-config.xml, /WEB-INF/struts-config-registration.xml</param-value>            </init-param>            <load-on-startup>1</load-on-startup>            </servlet>            

這種方法可以很好地解決修改沖突的問(wèn)題,不同的開(kāi)發(fā)人員可以在不同的配置文件中設置自己的Action、ActionForm等等(當然不是說(shuō)每個(gè)開(kāi)發(fā)人員都需要自己的配置文件,可以按照系統的功能模塊進(jìn)行劃分)。但是,這里還是存在一個(gè)潛在的問(wèn)題,就是可能不同的配置文件之間會(huì )產(chǎn)生沖突,因為在A(yíng)ctionServlet初始化的時(shí)候這幾個(gè)文件最終還是需要合并到一起的。比如,在struts-config.xml中配置了一個(gè)名為success的<forward>,而在struts-config-registration.xml中也配置了一個(gè)同樣的<forward>,那么執行起來(lái)就會(huì )產(chǎn)生沖突。

為了徹底解決這種沖突,Struts 1.1中引進(jìn)了模塊(Module)的概念。一個(gè)模塊就是一個(gè)獨立的子系統,你可以在其中進(jìn)行任意所需的配置,同時(shí)又不必擔心和其它的配置文件產(chǎn)生沖突。因為前面我們講過(guò),ActionServlet是將不同的模塊信息保存在不同的ModuleConfig對象中的。要使用模塊的功能,需要進(jìn)行以下的準備工作:

1、為每個(gè)模塊準備一個(gè)配置文件

2、配置web.xml文件,通知控制器

決定采用多個(gè)模塊以后,你需要將這些信息告訴控制器,這需要在web.xml文件進(jìn)行配置。下面是一個(gè)典型的多模塊配置:

<init-param>            <param-name>config</param-name>            <param-value>/WEB-INF/struts-config.xml</param-value>            </init-param>            <init-param>            <param-name>config/customer</param-name>            <param-value>/WEB-INF/struts-config-customer.xml</param-value>            </init-param>            <init-param>            <param-name>config/order</param-name>            <param-value>/WEB-INF/struts-config-order.xml</param-value>            </init-param>            

要配置多個(gè)模塊,你需要在原有的一個(gè)<init-param>(在Struts 1.1中將其對應的模塊稱(chēng)為缺省模塊)的基礎之上,增加模塊對應的<init-param>。其中<param-name>表示為config/XXX的形式,其中XXX為對應的模塊名,<param-value>中還是指定模塊對應的配置文件。上面這個(gè)例子說(shuō)明該應用有三個(gè)模塊,分別是缺省模塊、customer和order,它們分別對應不同的配置文件。

3、準備各個(gè)模塊所需的ActionForm、Action和JSP等資源

但是要注意的是,模塊的出現也同時(shí)帶來(lái)了一個(gè)問(wèn)題,即如何在不同模塊間進(jìn)行轉發(fā)?有兩種方法可以實(shí)現模塊間的轉發(fā),一種就是在<forward>(全局或者本地)中定義,另外一種就是利用org.apache.struts.actions.SwitchAction。

下面就是一個(gè)全局的例子:

    ...            <struts-config>            ...            <global-forwards>            <forward name="toModuleB"            contextRelative="true"            path="/moduleB/index.do"            redirect="true"/>            ...            </global-forwards>            ...            </struts-config>            

可以看出,只需要在原有的path屬性前加上模塊名,同時(shí)將contextRelative屬性置為true即可。此外,你也可以在<action>中定義一個(gè)類(lèi)似的本地<forward>。

  <action-mappings>            <!-- Action mapping for profile form -->            <action path="/login"            type="com.ncu.test.LoginAction"            name="loginForm"            scope="request"            input="tile.userLogin"            validate="true">            <forward name="success" contextRelative="true" path="/moduleA/login.do"/>            </action>            </action-mappings>            

如果你已經(jīng)處在其他模塊,需要轉回到缺省模塊,那應該類(lèi)似下面這樣定義,即模塊名為空。

<forward name="success" contextRelative="true" path="/login.do"/>            

此外,你也可以使用org.apache.struts.actions.SwitchAction,例如:

    ...            <action-mappings>            <action path="/toModule"            type="org.apache.struts.actions.SwitchAction"/>            ...            </action-mappings>            ...            
本站僅提供存儲服務(wù),所有內容均由用戶(hù)發(fā)布,如發(fā)現有害或侵權內容,請點(diǎn)擊舉報。
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
Struts的資源文件時(shí)如何初始化的--struts源碼學(xué)習 - 輪上飛 - BlogJa...
關(guān)于Liferay的配置文件 —— 基于Struts開(kāi)發(fā)Portlet
Struts2.0配置文件(web.xml)
struts1 問(wèn)題 報錯 集錦
SSH框架 web.xml配置
java面試-ssh-1
更多類(lèi)似文章 >>
生活服務(wù)
分享 收藏 導長(cháng)圖 關(guān)注 下載文章
綁定賬號成功
后續可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服

欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久