Struts.xml中Action的method與路徑的三種匹配方法

Struts.xmlActionmethod與路徑的三種匹配方法

 

首先我們有一個Action——UserAction

public class UserAction extends ActionSupport
{
    public String add()
    {
        return "add";
    }

   public String modify()
    {
        return "modify";
    }
}


1 指定method

<packagename="user" namespace="/userPath"extends="struts-default">
   <action name="userAdd"class="com.xy.UserAction" method="add">
   <result name="add">add.jsp</result>
   </action>
   <action name="userModify"class="com.xy.UserAction" method="modify">
    <resultname="modify">modify.jsp</result>
   </action>
</package>

路徑:
userPath/userAdd
userPath/userModify

特點:
不靈活,CRUD四個操作就要配4個action。

 

 

2動態方法調用DMI(DynamicMethod Invocation)

<packagename="user" namespace="/userPath"extends="struts-default">
   <action name="user"class="com.xy.UserAction">
    <result name="add">add.jsp</result>
 <result name="modify">modify.jsp</result>
   </action>
</package>

路徑:
userPath/user!add
userPath/user!modify

特點:
靈活。只要指定不同的方法就可以做不同的操作。

 

 

3通配符

<packagename="all" namespace="/"extends="struts-default">
   <action name="*_*" class="com.xy.{1}Action"method="{2}">
 <result name="add">{1}_add.jsp</result>
 <result name="modify">{1}_modify.jsp</result>
   </action>
</package>

路徑:
User_add
User_modify

特點:
更加靈活。整個項目甚至只要配一個總的action。是指定方法的一個特殊的用法。不過我覺得用DMI可以將每個模塊分的清楚。

 

4總結

在配置的時候要記住一句話:約定優於配置

在一個項目中,配置前,我們需要對action名,網頁名等等有嚴格的約定,才能做好配置。

 

發佈了31 篇原創文章 · 獲贊 12 · 訪問量 5萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章