struts2的Action配置

1,Action的配置格式基本爲:
<package name="包名字" extends="繼承的包" namespace="空間名" >
   <action name="訪問的名稱" class="處理請求的類">
    <result name="處理類返回的結果名稱">該結果名稱所對應的JSP頁面</result>
   </action>
</package>
如:
<package name="aa" extends="struts-default" >
   <action name="myaa" class="com.test.MyAction">
    <result name="success">/test/msg.jsp</result>
   </action>
</package>
訪問時:
<a href="myaa.action" >訪問myaaAction</a>

2,method屬性,該屬性可以把一個類的多個方法映射爲多個Action,如:
類文件
public class MethodAction extends ActionSupport
{
public String add()
{
   return SUCCESS;
}
public String delete()
{
   return SUCCESS;
}
public String modify()
{
   return SUCCESS;
}
public String query()
{
   return SUCCESS;
}
}
struts.xml配置文件:
<action name="訪問的方法名" class="處理的類" method="處理的方法名">
    <result name="結果頁名">結果頁面</result>
</action>


<action name="add" class="com.struts2.chen.MethodAction" method="add">
    <result name="success">/method/addRes.jsp</result>
   </action>
   <action name="delete" class="com.struts2.chen.MethodAction" method="delete">
    <result name="success">/method/deleteRes.jsp</result>
   </action>
   <action name="modify" class="com.struts2.chen.MethodAction" method="modify">
    <result name="success">/method/modifyRes.jsp</result>
   </action>
   <action name="query" class="com.struts2.chen.MethodAction" method="query">
    <result name="success">/method/queryRes.jsp</result>
   </action>
頁面:
    <a href="add.action">增加</a><br />
    <a href="delete.action">刪除</a><br />
    <a href="modify.action">修改</a><br />
    <a href="query.action">查詢</a><br />

3。動態調用方法DMI 如果是動態調用,那麼就不必要象上面那樣填寫那麼多的配置,可以直接在頁面上指定調用的方法。如下:
1)類與以上配置一樣
2)struts.xml配置爲:
<action name="methodaction" class="com.struts2.chen.MethodAction">
    <result name="success">/method/Res.jsp</result>
   </action>
3)頁面:
<a href="<%=path %>/methodaction!add.action">增加DMI</a><br />
    <a href="<%=path %>/methodaction!delete.action">刪除DMI</a><br />
    <a href="<%=path %>/methodaction!modify.action">修改DMI</a><br />
    <a href="<%=path %>/methodaction!query.action">查詢DMI</a><br />

以上一般選擇用2比較多,動態的調用方法調用的比較少,因爲每個方法中可能調用的攔截器和過濾器可能不一樣,所以,一般選用2。

4。forward跳轉,如果在result中不加上 type="redirect" ,那麼就是forward的服務器跳轉,加上後就是客戶端的跳轉 如:struts配置
<action name="index">
   <result type="redirect">index.jsp</result>
   </action>
在頁面中調用的時候,這麼寫:
<a href="<%=path %>/index.action">返回首頁</a>

5。錯誤提示,當訪問不存在的action 的時候,會報錯,那麼就應該到struts.xml中加上一個默認錯誤ACTION。如:
<default-action-ref name="error" />
   <action name="error">
    <result>/error.jsp</result>
</action>
錯誤的,不存在的頁面,那麼就在web.xml中加如下配置:
<error-page>
   <error-code>404</error-code>
   <location>/error.jsp</location>
</error-page>
可能頁面錯誤哪個找不到,那麼就要到在IE【工具】->【Internet選項】->【高級】中勾掉【顯示友好http錯誤提示】;

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