3.Struts2-Result
注:
1.在struts.xml文件中使用include标签 可以将另外一个xml文件包含进struts.xml文件中,如:
<struts>
<constant name="struts.devMode" value="true" />
<include file="login.xml" />
</struts> //就可以包含login.xml文件
2.可以在struts.xml文件中,使用 <default-action-ref> 标签 来指定默认Action,即找不到对应的Action进行处理时,调用这个Action
如:<default-action-ref name="index"></default-action-ref>
Result
1.result 标签 type 属性(用于指定某个Action执行后跳转的方式)
type = "dispather"(默认) 类似于转发(转发到某个JSP)
type="redirect" 类似于重定向 (重定向到某个JSP)
type="chain" 转发到某个Action (转发的Action和自身的Action 不在同一个包下,需要使用参数去指定)
type="redirectAction" 重定向到某个Action
这四种需要了解 还有其他的不太常见,重点掌握前面两种
2.全局结果集(<global-results>)
在某个package中使用<global-results>标签 ,设置全局结果集
全局结果集的作用:相当于为该package下的每个action 多加上一个result
如:在Action中,execute方法 既没有返回success,也没有返回error等,返回的是mainpage,
struts.xml中对应的action 并没有配置 ‘mainpage’ 的result,但如果设置了全局结果集,就仍可以找到对应的result
注:如果另外一个package,想要使用这个globle results,需要 extends 对应的package,这也是package标签中 extends属性的作用
3.动态结果(所谓动态:就是在Action中动态指定结果,在struts.xml中再去取出这个结果)
public class UserAction extends ActionSupport {
private int type;
private String result;
public void setResult(String result) {
this.result = result;
}
public String getResult() {
return result;
}
public void setType(int type) {
this.type = type;
}
public int getType() {
return type;
}
@Override
public String execute() throws Exception {
if(type == 1) {
result="/success.jsp";
} else if(type == 2) {
result="/error.jsp";
}
return SUCCESS;
}
}
/*不根据result标签中的 name 属性来 进行筛选,而是动态指定想要访问的web资源*/
1.在Action中,设置一个属性,用于保存动态结果,根据前台传来的信息,来为其赋值
注意一定不要忘了为动态结果的保存值设置set get方法
2.在struts.xml 中 取出这个动态结果 使用 ${result} 如:<result> ${result} </result>
4.带参数的结果集(即返回的web资源路径,后面带有参数,这个参数是Action里面的属性)
private int type;
public void setType(int type) {
this.type = type;
}
public int getType() {
return type;
}
<result type="dispatcher"> /success.jsp?t=${type} </result>
注:
一次request请求,只有一个值栈 如果result标签中指定类型为 "redirect",重定向到某个Action 或 JSP 那么会有两次请求,
之前的值栈的内容就无法保存,会被第二次请求覆盖
如果result标签中指定类型为 "dispather" 转发到某个Action 或JSP 那么请求只有一次,可以共享值栈中的内容
3.Struts2-Result的更多相关文章
- struts2 Result Type四个常用转跳类型
Result的四个常用转跳类型分别为 Dispatcher 用来转向页面,是Struts的默认形式 Redirect 重定向到一个URL Chain 用来处理Action链 RedirectAc ...
- Struts2(result 流 )下载
jsp: <body> <a href="stream.action?fileName=psb.jpg">psb</a> <br> ...
- struts2 result type类型
result标签中type的类型 类型 说明 chain 用于Action链式处理 dispatcher 用于整合JSP,是<result>元素默认的类型 freemarket 用来整合F ...
- Struts2 result type(结果类型)
转自:http://www.cnblogs.com/liaojie970/p/7151103.html 在struts2框架中,当action处理完之后,就应该向用户返回结果信息,该任务被分为两部分: ...
- Struts2 result type
Struts2支持的不同类型的返回结果为: type name 说明 dispatcher 缺省类型,用来转向页面,通常处理JSP chain 转向另一个action,用来处理Action链 redi ...
- struts2 result的type属性
目前只使用过以下3种,都是直接跳转到另一个action chain: 写法:<result name="success" type="chain"> ...
- struts2 result type的类型
一共十种类型 1.dispatcher 默认的类型,相当于servlet的foward,服务器端跳转.客户端看到的是struts2中配置的地址,而不是真正页面的地址.一般用于跳转到jsp页面 2.re ...
- struts2 result type属性说明
首先看一下在struts-default.xml中对于result-type的定义: <result-types><result-type name="chain" ...
- 分享知识-快乐自己:Struts2 - result标签的name属性和type属性
1):result的name属性 例如:<result name="success">/pages/success.jsp</result> Strut ...
- struts2 result随笔
一.result:chain(从一个Action转发到另一个Action) chain结果类型有4个属性,分别是: actionName (default) - the name of the ac ...
随机推荐
- 用第三方工具类,将JavaBean、List、Map<String,Object>转成JSON文本
导入第三方jar包: >commons-beanutils-1.7.0.jar >commons-collections-3.1.jar >commons-lang-2.5.jar ...
- scala简单学习---1
:paste //进入代码块模式 :quit //退出scala编程 安装方面: 版本:scala-2.12.4.msi 环境变量: %SCALA_HOME%\bin;%SCALA_HOME%\jre ...
- centos6 安装tensorflow
1.升级python2.6.6 至 python2.7.12+ 升级时./configure --prefix=/usr/local/python27 --enable-unicode=ucs4 2. ...
- SpringMVC,SpringBoot上传文件简洁代码
@RequestMapping("/updateAvatar.html") public String updateHeadUrl(MultipartFile avatar, Mo ...
- three.js 之 透明物体不能正常显示
这几天遇到一个需求,类似这个案例:http://www.hightopo.com/demo/FaultDetection/ 就是这个透明渐变呼吸光柱,看到之后就想着写个shader材质实现透明度渐变, ...
- python-Web-django-商城-不登陆添加购物车
utils: # 商品多级联动 def get_category(categorys)->dict: ''' :param:商品类性 :return: {{[],[]},{[],[]},{[], ...
- 并发-synchronized
线程并发-synchronized和Lock简单认知 前几天刚加深了线程的了解,期间在验证各种方法及多线程时遇到一些疑问,在高并发的情况下,怎么做才能保证程序还能按照我们预期的正常运行下去,这就是我们 ...
- windows下,给golang编译的exe添加一个图标
通过go build生成的exe文件,通常是一个默认的图标,发给别人的时候,总觉得像病毒,下面我们来给他加一个好看的图标,让他看起来正经一些. 1.找到一个喜欢的图片. 2.通过工具或是在线工具生成. ...
- XOR Guessing(交互题+思维)Educational Codeforces Round 71 (Rated for Div. 2)
题意:https://codeforc.es/contest/1207/problem/E 答案guessing(0~2^14-1) 有两次机会,内次必须输出不同的100个数,每次系统会随机挑一个你给 ...
- 关于centOS安装配置mysql5.6那点事
第一步 下载安装 一.主要因为现在mysql官网yum直接推送mysql8,mysql5.1,然而mysql8不稳定,mysql5.1版本又太低,要想用旧版本5.6就先下载相应的依赖包,安装好依赖包, ...