- 浏览: 471290 次
- 性别:
- 来自: 武汉
文章分类
最新评论
-
excellent95:
谢楼主分享,确实是CSS图片问题
Struts2判断页面是POST方式提交还是GET方式提交 -
wangluo2:
javaBase那个包显示有问题啊pom文件那一行报错了
微信公众平台开发实战(08) 基于地理信息的服务(LBS) -
andilyliao:
jd技术这么渣也好意思出书,真是醉了
《京东技术解密》试读--十年磨一剑 -
bitray:
刘强东作序多什么,他也不会什么技术,腾讯出来帮他还不是因为腾讯 ...
《京东技术解密》试读--十年磨一剑 -
come_for_dream:
想试试搞这个
《大型分布式网站架构设计与实践》试读
struts.xml 配置详解之六 通配符
1. Action 配置
1.7 、通配符映射
通配符样式:可以包含一个或多个下列特殊记号 |
|
特殊记号 |
说明 |
* |
匹配0 个或多个字符,斜线(/ )字符除外 |
** |
匹配0 个或多个字符,包含斜线(/ )字符 |
\ |
反斜线字符被用作转义序列,因此'\*' 匹配星号(* )字符,'\\' 匹配反斜线(\ )字符 |
示例:
代码清单 1 : UserAction.java 片段
public class UserAction extends ActionSupport {
public String add() {
System.out .println("add 方法被调用 " );
return SUCCESS ;
}
public String del() {
System.out .println("del 方法被调用 " );
return SUCCESS ;
}
public String modify() {
System.out .println("modify 方法被调用 " );
return SUCCESS ;
}
public String query() {
System.out .println("query 方法被调用 " );
return SUCCESS ;
}
}
代码清单 2 : MP3Action.java 片段
public class MP3Action extends ActionSupport {
public String add() {
System.out .println("add 方法被调用 " );
return SUCCESS ;
}
public String del() {
System.out .println("del 方法被调用 " );
return SUCCESS ;
}
public String modify() {
System.out .println("modify 方法被调用 " );
return SUCCESS ;
}
public String query() {
System.out .println("query 方法被调用 " );
return SUCCESS ;
}
}
jsp 访问代码
代码清单 3 : main.jsp 片段
< a href = " <%= path %> /add_User.action" > 增加 User </ a >
< br />
< a href = " <%= path %> /del_User.action" > 删除 User </ a >
< br />
< a href = " <%= path %> /modify_User.action" > 修改 User </ a >
< br />
< a href = " <%= path %> /query_User.action" > 查询 User </ a >
< br />
< br />
< a href = " <%= path %> /add_MP3.action" > 增加 MP3 </ a >
< br />
< a href = " <%= path %> /del_MP3.action" > 删除 MP3 </ a >
< br />
< a href = " <%= path %> /modify_MP3.action" > 修改 MP3 </ a >
< br />
< a href = " <%= path %> /query_MP3.action" > 查询 MP3 </ a >
< br />
在action 映射和action 结果中:
1、 通配符匹配的值 可以用记号{N} 来访问,N 是第1 到9 的数字,指出替换 的是哪一个通配符 匹配的值。
2、 整个请求URI 用记号{0} 来访问。
代码清单 3 : struts.xml 片段
<package name="login" extends="struts-default">
<action name="*_*" class="com.coderdream.action.{2}Action"
method="{1}">
<result name="success">/WEB-INF/msg/{0}Suc.jsp </result>
</action>
</package>
详细解析:
1、 当请求“/add_User.action ” 时,name 中的第一个星“* ”匹配方法add ,第二个星“* ”匹配Action 名User ,所以会访问UserAction 中的add 方法 ;
2、 结果映射中使用的记号是{0} ,于是被整个请求URI (即add_User )替换,所以会访问add_User Suc.jsp 页面 。
注意点:
1、 如果要使用多个通配符,要用下划线(_ ) 隔开;
2、 不同的方法 可以映射不同的结果 ,这比动态方法调用更灵活(动态方法调用 只能访问同一个结果 )
3、 多个action 映射 可以匹配同一个请求 :
代码清单 4 : struts-1.xml 片段
< package name = "login" extends = "struts-default" >
<!-- 1 、全通配符 -->
< action name = "*" class = "com.coderdream.action.UserAction" >
< result name = "success" > /WEB-INF/msg/starSuc.jsp </ result >
</ action >
<!-- 2 、部分通配符 -->
< action name = "*User" class = "com.coderdream.action.EditUserAction" >
< result name = "success" > /WEB-INF/msg/editUserSuc.jsp </ result >
</ action >
<!-- 3 、无通配符 -->
< action name = "addUser"
class = "com.coderdream.action.AddUserAction" >
< result name = "success" > /WEB-INF/msg/addUserSuc.jsp </ result >
</ action >
</ package >
1) 当请求“/addUser ”时,框架优先 匹配无通配符 的action ,此处会匹配AddUserAction ;
2) 当请求“/queryUser ”时,框架按出现顺序 匹配通配符的action ,此处会匹配UserAction ,而不会匹配EditUserAction ;
3) 所以如果想让使用“部分通配符 ”的action 被访问,“全通配符” 的配置应该放在最后 。
我的联系方式: 85337464
我的博客: http://coderdream.iteye.com
- 0601.struts.xml配置详解之六_通配符.pdf (228.9 KB)
- 下载次数: 28
发表评论
-
Maven Struts2 项目
2013-09-14 11:44 01、创建好Maven环境; 2、创建一个Maven工 ... -
【张冰Struts2学习笔记】0502.struts.xml配置详解之五 Action配置2
2010-11-26 14:28 1897struts.xml 配置详解之五 Action ... -
【张冰Struts2学习笔记】0501.struts.xml配置详解之四 Action配置1
2010-11-26 13:10 1878struts.xml 配置详解之四 Action 配置 ... -
【张冰Struts2学习笔记】0403.struts.xml配置详解之三 拦截器配置
2010-11-25 19:03 3318struts.xml 配置详解之三 拦截器配置 ... -
【张冰Struts2学习笔记】0402.struts.xml配置详解之二 名称空间 包含
2010-11-25 18:59 1893struts.xml 配置详解之二 名称空间 包含 ... -
【张冰Struts2学习笔记】0401_struts.xml配置详解之一
2010-11-25 13:56 2295struts.xml 配置详解之一 Bean ... -
【张冰Struts2学习笔记】0302.Struts2的主要配置文件及优先级
2010-11-20 16:33 1678Struts2 的主要配置文件及优先级 ... -
【张冰Struts2学习笔记】0301_struts.properties 配置详解(表格版)
2010-11-17 15:23 1571注:附件pdf中有35个属性! ... -
【张冰Struts2学习笔记】0202_Struts2的三种接收用户输入的方法
2010-11-17 12:32 2038Struts2的三种接收用户输入的方法 ... -
【张冰Struts2学习笔记】0201_Action接口与ActionSupport类
2010-11-16 15:32 4082Action 接口与ActionSupport ... -
【张冰Struts2学习笔记】0102_第一个Struts2实例
2010-11-14 19:17 2969基于Struts2 的简单登录项目 ... -
【张冰Struts2学习笔记】0101_Struts1与Struts2的不同点
2010-11-14 14:12 1377Struts1与Struts2的不同点 ... -
基于Struts2的Web应用程序所需要的最少类库
2010-08-30 16:17 1869Struts 2.0.11版: 文件名 ... -
Struts2判断页面是POST方式提交还是GET方式提交
2010-06-03 11:06 9115在项目开发过程中,发现有个页面会提交两次,一直没有找到原因,后 ... -
Struts2的一个问题!no found ApplicationContextAware
2009-06-15 16:39 1704问题: Caused by: java.lang.NoC ... -
struts2的select用法
2009-02-11 09:59 66461、在页面对应的Action中有typeBase属性,改变下拉 ... -
子页面刷新父窗口
2009-02-09 11:50 3118下面的例子是一个子窗体调用方法改变父窗体 主页面 cc.ht ... -
Struts2结合JavaScript控制单选框的状态
2008-12-26 11:48 2055需求: 某个页面有3种操作,新增、修改和删除,其中某个字段为只 ... -
《Struts2深入详解》笔记--第三章 由“登录开始”
2008-12-02 19:36 17191、使用领域对象来接收用户输入 【工程1:sx_ch ... -
Struts2使用经验
2008-11-27 14:35 1412、显示某个对象的某个属性值: 两种方式: ${enterpri ...
相关推荐
NULL 博文链接:https://coderdream.iteye.com/blog/812871
NULL 博文链接:https://coderdream.iteye.com/blog/811139
NULL 博文链接:https://coderdream.iteye.com/blog/813784
NULL 博文链接:https://coderdream.iteye.com/blog/811262
张冰struts原代码(全部1-6)张冰struts原代码(全部1-6)张冰struts原代码(全部1-6)张冰struts原代码(全部1-6)张冰struts原代码(全部1-6)张冰struts原代码(全部1-6)
张冰struts原代码(全部1-6)张冰struts原代码(全部1-6)张冰struts原代码(全部1-6)张冰struts原代码(全部1-6)
张冰struts原代码(全部1-6)张冰struts原代码(全部1-6)张冰struts原代码(全部1-6)张冰struts原代码(全部1-6)
张冰struts原代码(全部1-6)张冰struts原代码(全部1-6)张冰struts原代码(全部1-6)张冰struts原代码(全部1-6)张冰struts原代码(全部1-6)张冰struts原代码(全部1-6)张冰struts原代码(全部1-6)张冰struts原代码(全部1-6)
张冰struts原代码(全部1-6)张冰struts原代码(全部1-6)张冰struts原代码(全部1-6)张冰struts原代码(全部1-6)
张冰struts原代码(全部1-6)张冰struts原代码(全部1-6)张冰struts原代码(全部1-6)张冰struts原代码(全部1-6)
张冰主讲的struts2 ppt 比较详细的一份ppt
struts2的介绍,struts框架结构、控制器组件、标签库以及详细的配置文件描述
张冰主讲的Struts2的PPT,主要介绍Struts2和Struts1的区别,还介绍了简单的登录功能的实现。建议初学者看,可以让你从宏观上把握Struts2.
张冰_struts2_PPT 2009 ...............
Struts2_张冰_视频教程课件_PPT,张冰配套教学视频课件。
我主要参考了《深入浅出Struts2》、《Struts2.0中文教程》以及张冰老师的视频教程,这里借机很感谢他们,大家可以在网上收到这些资料,当然可以向我索要,我会很乐意给大家的。当然我不认为这是最好、最全的学习...
C面向对象程序设计张冰PPT学习教案.pptx
C面向对象程序设计张冰PPT课件.pptx
该文档是我看张冰老师的整合SSH视频的心得,我自己好不容易整合好了,将详细的步骤记录了下来,和大家分享,希望对大家有用!
C++面向对象程序设计 张冰 课件、源代码