1. 程式人生 > >Struts2 學習之路(二):2.4 Struts2(2.5.14.1版本)中的萬用字元匹配問題

Struts2 學習之路(二):2.4 Struts2(2.5.14.1版本)中的萬用字元匹配問題

struts.xml 配置檔案中萬用字元的匹配

  • 可以匹配action節點中的class屬性,method屬性,result子節點的name屬性,甚至是result子節點的路徑內容
  • 因為2.5.x版本和以前的版本都不一樣,所以需要特殊配置
<struts>
    <!-- 配置struts2 可以受理請求的副檔名:以.action,.do結尾或者什麼都不寫均可 -->
    <constant name="struts.action.extension" value="action,do,"></constant>
    <!-- 萬用字元的配置方法一:需要設定這個常量為true,然後再在action中單獨設定 -->
<constant name="struts.enable.DynamicMethodInvocation" value="true"/> <package name="actionContext" extends="struts-default" > <!-- 萬用字元的配置方法二:直接就在package裡面新增允許通過萬用字元的方法 --> <!-- <global-allowed-methods>login</global-allowed-methods> --> <action
name="userAction-*" class="cn.zc.cris.Wildcards.UserAction" method="{1}">
<result name="{1}-success">/success.jsp</result> <!-- 萬用字元的使用方法一:上面設定完常量後,還要在action中設定允許使用萬用字元的方法, execute,input,back,cancel,browse,save,delete,list,index這些方法不需配置,即可使用 -->
<allowed-methods>add,update,query</allowed-methods> </action> </package> </struts> 前臺頁面: <a href="userAction-query">user query</a> <br><br> <a href="userAction-delete">user delete</a> <br><br> <a href="userAction-add">user add</a> <br><br> <a href="userAction-update">user update</a> 後臺action: public class UserAction { public String update() { System.out.println("update"); return "update-success"; } public String add() { System.out.println("add"); return "add-success"; } public String delete() { System.out.println("delete1"); return "delete-success"; } public String query() { System.out.println("query"); return "query-success"; } }