Struts2学习第六天:Result总结
2017-08-22 23:12
246 查看
/Struts2_1600_GlobalResult 公用的结果集
1.如果在加载过程中struts.xml文件配置错误,则必须重新加载项目。
<constant name="struts.devMode" value="true"/> 仅用于加载没问题 Struts2帮助文档:\struts-2.1.6-all\struts-2.1.6\docs index.html
2.全局结果集:在struts.xml的package中配置:在extends ActionSupport 的类中写个返回String “main”的方法即可
<global-results> <result name="main"> /main.jsp </result> </global-results>
3.从一个package访问另一个package的 globalresult可通过extends属性
<package name="admin" namespace="/admin" extends="user"> <package name="user" namespace="/user" extends="struts-default"> 默认的继承
必须有extends该属性,在referenced library/struts2-core-2.1.6.jar/struts-default.xml
/Struts2_1700_DynamicResult 动态结果集,使用不多,了解即可:
可以属性保存结果(r); 属性的结果可以动态确定; 在Struts.xml可以${r} 从值栈取值
1. 在Struts.xml中配置result如下:
<result>${r}</result> 不是EL表达式,是OGN表达式 $用于在配置文件中,从值栈中取值
2.在Controller中配置:
type通过index.jsp < li>< a href=”user/user?type=1”>返回success < / a> < / l i >public class UserAction extends ActionSupport { private int type; private String r; public String getR() { return r; } public void setR(String r) { this.r = r; } public int getType() { return type; } public void setType(int type) { this.type = type; } @Override public String execute() throws Exception { if(type == 1) r="/user_success.jsp"; else if (type == 2) r="/user_error.jsp"; return "success"; } }
/Struts2_1800_ResultWithParams
1.配置struts.xml
<result type="redirect">/user_success.jsp?t=${type}</result>
是客户端跳转,只有在redirect(客户端)时才需要传
一个Action forward 到其他的Action,不需要传参数,forward共享同一个值栈
一次request只有一个值栈 因而采用 dispatcher 不需要传参数,可直接取值
2.在Action中声明type
public class UserAction extends ActionSupport { private int type; public int getType() { return type; } public void setType(int type) { this.type = type; } @Override public String execute() throws Exception { return "success"; } }
3.在jsp中取值
from valuestack: <s:property value="t"/><br/><!- - 第一个取不到,因为新的请求没有Action的存在,t的参数无法放在值栈 - -> from actioncontext: <s:property value="#parameters.t"/><!- - 可以取到, - ->
2.Result总结
1. 常用四种类型:
a) dispatcher(默认) b) redirect c) chain d) redirectAction
2. 全局结果集
a) global-results | extends
3. 动态结果(了解)
a) 在action中保存一个属性,存储具体的结果location
4. 传递参数
a) 客户端跳转才需要传递 b) ${}表达式(不是EL)
相关文章推荐
- struts2学习_第六天(小知识总结)
- struts2学习笔记----dynamicResult
- Struts学习总结(五)---使用Struts2实现单个文件上传
- struts2第六天总结(国际化)
- Struts2学习笔记--使用Response下载文件和Struts2的StreamResult文件下载
- [原创]java WEB学习笔记75:Struts2 学习之路-- 总结 和 目录
- struts2 学习总结 ---- Struts-tags
- Struts2学习总结(十):paramsPrepareParams拦截器栈
- java struts2入门学习---常用标签学习总结
- 学习struts2 类型转换总结
- Struts2学习总结(3)--值栈,Ognl表达式,Struts标签库,国际化,数据校验,拦截器
- MyBatis学习总结_13_Mybatis查询之resultMap和resultType区别
- struts2表单验证初步及国际化实现(学习总结)
- 【转载】Struts2学习总结----struts.xml 配置
- Struts2基础学习总结
- [Struts2]Struts2学习总结
- struts2 学习总结(上传文件,解决乱码,通配符的使用,整合fck)
- struts2学习------result配置的各种视图转发类型
- struts2学习笔记----result with params
- Struts2 学习笔记 10 Result部分 part1