struts 1.x 的模式匹配

转载自:http://blog.csdn.net/huizhang212/article/details/4033305  

对于每一个请求都去配置一个Action,是一件麻烦的事,于是就会想到用DispatchAction来解决这个问题。更好的是如果我们有一个良好的命名习惯,就可以利用Struts提供的模式匹配去进一步减少配置文件中配置代码。

      下面我就详细介绍以下:

      一定要注意的是要有一个好的命名规则,约定如下命名规则。

  • 添加:add
  • 修改:modify
  • 删除:del
  • 在WebRoot下创建子目录user,将对于user的相关的jsp文件放在其中

      以下给出简单实例,在index.jsp中有三个超链接,点击进入相应的成功页面,统一有UserAction处理转向。
      index.jsp页面代码如下。

    <a href="user/add.do?command=add">添加用户成功</a><br>
    <a href="user/modify.do?command=modify">修改用户成功</a><br>
    <a href="user/del.do?command=del">删除用户成功</a><br>


      UserAction中给出add,modfy,del方法,这里要了解DispatchAction的使用,不再介绍。


      下面就是struts-config.xml的配置了,如下。

    <action path="/user/*"
        type="com.huizhang212.struts.UserAction"
        parameter="command"
    >
        <forward name="success" path="/user/{1}_success.jsp" />
    </action>

 

      如果不使用Struts模式匹配的话,就要给每一个command配置一个 <forward>,上面使用了Struts模式匹配,那么就只配一个<forward>就可以了。
      <forward>中的path="/user/{1}_success.jsp" 的{1}是用<action>中 path="/user/*" 的"*"所表示的字符填充的,例如当点击index.jsp页面的“添加用户成功”时,<action>中 path="/user/add",那么<forward>中的path="/user/add_success.jsp"。

      另外<forward>也可以配成path="/{0}_success.jsp" ,这里的{0}是用<action>中 path所表示的字符填充的。

      养成一个好的命名习惯,可以让我们省去很多繁琐的配置,更重要的是,拥有统一良好命名规则的代码会给人整齐划一,清晰明了的感觉。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值