zoukankan      html  css  js  c++  java
  • 14.使用通配符

    转自:https://wenku.baidu.com/view/84fa86ae360cba1aa911da02.html

    建立struts2wildcard项目,此实例基本仿照前面前面第7点的实例改写而成。为了使用通配符,只需要改写配置文件即可。此实例未使用通配时的配置文件如下:

    <action name="addUser" class="com.asm.UserAction" method="addUser">

                         <result name="success">/user/addUser.jsp</result>
    </action>

    <action name="delUser" class="com.asm.UserAction" method="delUser">

                         <result name="success">/user/delUser.jsp</result>

    </action>

    <action name="queryUser" class="com.asm.UserAction" method="queryUser">

                         <result name="success">/user/queryUser.jsp</result>

    </action>

    <action name="updateUser" class="com.asm.UserAction" method="updateUser">

                    <result name="success">/user/updateUser.jsp</result>

    </action>

    我们注释掉上面的配置,使用通配符只需如下内容即可达到相同的效果:
    <action name="*User" class="com.asm.UserAction" method="{1}User">

                         <result name="success">/user/{1}User.jsp</result>

    </action>

    原理:当有.../addUser.action请求时,如果不能在当前应用中找到完全相同的addUser名字的Action时,通配符配置这时就起作用了,按通配原则,它便和上面的name="*User"相配成功,这里不难明了*此时代指的内容是add,再来看method恰恰是引用第一个*的内容,所以它的method此时的完整名为addUser,它刚好和com.asmUserAction中的addUser方法相对,所以它会去addUser方法,再来看下面的result配置所指代的页面,它也用到了{1},所以它的完整页面是/addUser.jsp。其实如果我们有良好的编程命名习惯,所有的Action我们都只需要进行一次配置。举例:规定所有的Action类都用XXXAction来命名,类中所有的CRUD方法都用add/del/update/query。Jsp页面也用add/del/update/query_XXX.jsp这样的形式。即配置文件可以写成如下形式:
    <action name="*_*" class="com.asm.{2}Action" method="{1}">

                         <result name="success">.../{1}_{2}.jsp</result>

    </action>

    Name中第一个*代表CRUD操作的名字,第二个*代表类的名字。所以访问链接地址举例如下:

    .../del_User.action将访问到User类的del方法,成功后跳到del_User.jsp页面。补充说明{0}是代表name中所有的*组合。

  • 相关阅读:
    【JS】js获得下拉列表选中项的值和id
    【Java】Java处理double相加的结果异常
    【JSP】弹出带输入框可 确认密码 对话框
    【MySQL】Java对SQL时间类型的操作(获得当前、昨天、前年。。时间)
    【MySQL】通过select语句把一列数据拼接成一条字符串
    【JSP】JSP向MySQL写入|读出中文数据——乱码问题
    【CSS】使用CSS改变超链接样式
    【JSP】三种弹出对话框的用法实例
    【JSP】<meta>标签用法
    【Mysql】安装 mysql-5.7.5 指南
  • 原文地址:https://www.cnblogs.com/sharpest/p/5580589.html
Copyright © 2011-2022 走看看