JavaWeb開辟中alias攔阻器的應用辦法。本站提示廣大學習愛好者:(JavaWeb開辟中alias攔阻器的應用辦法)文章只能為提供參考,不一定能成為您想要的結果。以下是JavaWeb開辟中alias攔阻器的應用辦法正文
在SSH項目中,有時須要由一個Action跳轉到另外一個Action。有兩種方法可以完成Action之間的跳轉,一種是chain,另外一種是redirectAction,這兩種方法之間的差別是chain是在辦事器上跳轉,可以完成分歧Action之間的數據同享;而redirectAction是在客戶端停止跳轉。
應用chain在分歧的Action之間傳遞參數值,這個功效可以經由過程alias攔阻器來完成。
1. 指定Filter類
在web.xml中設置上面的攔阻器:
<filter> <filter-name>struts2</filter-name> <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class> </filter> <filter-mapping> <filter-name>struts2</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>
2. 傳遞參數值
在struts.xml文件中,界說第一個被挪用的Action:
<action name="XXX" class="XXXAction"> <result name="success"></result> <result name="input" type="chain"> <param name="actionName">input_error</param> </result> </action>
界說第二個被被挪用的Action:
<action name="input_error" class="inputErrorAction"> <param name="aliases">#{'error_status':'status','error_desc':'desc'}</param> </action>
當第一個Action前往input時,就會跳轉到第二個Action,此時將第一個Action中的error_status、error_desc的值分離傳遞給第二個Action的status、desc,從而完成了參數值的傳遞。必定要留意停止參數值傳遞的變量必定要有getter()和setter()辦法,不然傳遞曩昔的值就是null。
以上所述是小編給年夜家引見的JavaWeb開辟中alias攔阻器的應用辦法,願望對年夜家有所贊助,假如年夜家有任何疑問請給我留言,小編會實時答復年夜家的。在此也異常感激年夜家對網站的支撐!