在struts2中有很多項,我們平時的配置文件如下,如果不寫的默認(rèn)值會是什么呢?
- <package name="chj" namespace="/test" extends="struts-default">
- <action name="helloworld" class="com.chj.action.HelloWorldAction" method="execute" >
- <result name="success">/WEB-INF/page/hello.jsp</result>
- </action>
- </package>
1、如果沒有為action指定class,默認(rèn)是ActionSupport。
2、如果沒有為action指定method,默認(rèn)執(zhí)行action中的execute() 方法。
3、如果沒有指定result的name屬性,默認(rèn)值為success。
Action中result的各種轉(zhuǎn)發(fā)類型:
- <span style="color:#000000;"><action name="helloworld" class="com.chj.action.HelloWorldAction">
- <result name="success">/WEB-INF/page/hello.jsp</result>
- </action></span>
result配置相當(dāng)于forward, struts2中提供了多種結(jié)果類型,常用的類型有: dispatcher(默認(rèn)值)、 redirect 、 redirectAction 、 plainText。
在result中還可以使用${屬性名}表達(dá)式訪問action中的屬性,表達(dá)式里的屬性名對應(yīng)action中的屬性。如下:
- <span style="color:#000000;"><result type="redirect">/view.jsp?id=${id}</result></span>
下面是redirectAction 結(jié)果類型的例子,如果重定向的action中同一個包下
- <span style="color:#000000;"><result type="redirectAction">helloworld</result>
- </span>
如果重定向的action在別的命名空間下:
- <span style="color:#000000;"><result type="redirectAction">
- <param name="actionName">helloworld</param>
- <param name="namespace">/test</param>
- </result>
- </span>
plaintext:顯示原始文件內(nèi)容,例如:當(dāng)我們需要原樣顯示jsp文件源代碼 的時候,我們可以使用此類型。
- <span style="color:#000000;"><result name="source" type="plainText ">
- <param name="location">/xxx.jsp</param>
- <param name="charSet">UTF-8</param><!-- 指定讀取文件的編碼 -->
- </result>
- </span>
當(dāng)多個action中都使用到了相同視圖,這時我們應(yīng)該把result定義為全局視圖。struts2中提供了全局global-results中也提供了相似功能:
- <span style="color:#000000;"><package ....>
- <global-results>
- <result name="message">/message.jsp</result>
- </global-results>
- </package>
- </span>
本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請
點擊舉報。