初识Struts2_通配符

本文介绍 Struts2 中如何通过配置文件实现动作的灵活调用,包括使用通配符进行动作映射的方法及多个动作路径的优先级问题。

一、Action

1 public class UserAction extends ActionSupport {
2     public String add(){
3         return "success";
4     }
5     public String delete(){
6         return "success";
7     }
8 }

二、配置文件

 1 <!-- 
 2         使用通配符应约定好,才能做到配置最简
 3         {1}代表前面第一个*的内容
 4         {2}代表前面第二个*的内容
 5         访问路径:
 6         localhost:8080/Struts2_card/UserAction_add
 7         localhost:8080/Struts2_card/UserAction_update
 8      -->
 9      <package name="default" namespace="/" extends="struts-default">
10         <action name="*_*" class="cn.su.action.{1}" method="{2}">
11             <result name="success">/{1}_{2}_success.jsp</result>
12         </action>
13     </package>

三、页面

  UserAction_add_success.jsp

     UserAction_delete_success.jsp

四、当多个action对应访问路径时的优先级

  4.1 Action

1 public class UserAction extends ActionSupport {
2     public String add(){
3         return "success";
4     }
5 }

 

  4.2 配置文件

 

 1 <!-- 
 2         访问路径:
 3         localhost:8080/Struts2_Card2/UserAction_add
 4         排序:
 5             最优先访问的是UserAction_add 
 6             UserAction_*和*_*优先级相同,谁在前就先访问谁
 7      -->
 8      <package name="default" namespace="/" extends="struts-default">
 9          <!-- 02 -->
10         <action name="UserAction_*" class="cn.su.action.UserAction" method="{1}">
11             <result name="success">/02.jsp</result>
12         </action>
13          <!-- 01 -->
14         <action name="*_*" class="cn.su.action.{1}" method="{2}">
15             <result name="success">/03.jsp</result>
16         </action>
17         <!-- 03
18         <action name="UserAction_add" class="cn.su.action.UserAction" method="add">
19             <result name="success">/01.jsp</result>
20         </action>
21          -->
22     </package>

 

 

 

 

 

 

转载于:https://www.cnblogs.com/suemailit/p/3669087.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值