valuestack,stackContext,ActionContext.之间的关系以及action的数据在页面中取得的方法
1.三者之间的关系如下图所示:

2.action的数据在页面中取得的方法
在struts2标签内部使用的表达式是%{}为OGNL表达式,在JSP页面中可以使用形式为${}为EL表达式。
EG.如果取的值在valueStack中则直接引用即可,不需要#。但是如果指定id,就需要使用#,因为这时的参数是被放在stsckcontext中,而不是valuestack。eg.bean
2.1
如果需要引用valueStack中的值,需要使用这样的形式。
<s:iterator value="#userList" /> //userList在action部分被保存在Request中,所以使用#加属性名来引用值。
一般只要iterator用#引用了,下面的proper不用#,直接引用就可以了。
2.2
<s:textfield name="loginName" value="%{#request.loginNames}"/>
先用#将Stack Context中reques作用域中的loginNames属性取出,然后使用OGNL表达式%{}将其在Struts2标签内表示出来(此处%{}见得不多。要注意!!!我的理解是,一般需要表示出来文本的才使用。如iterator的value则不需要)。
2.3
如果是在JSP页面中,且不在Struts2标签内。则使用EL表达式 ${#request.loginNames}直接在HTML语句中表示。或者使用${requestScope.loginNames}
2.4
直接给一个iterator赋一个list,使用#{'a','b',....}
如果是map,则#{'key1':'value1','key2':'value2',....}
- <s:iterator value="#{'憾地神牛':'01','矮子火枪':'02','沉默术士':'03'}" id="name1" status="st">
- <tr <s:if test="#st.even">style="background-color:#bbbbbb"</s:if>>
- <td><s:property value="key"/></td>
- <td><s:property value="value" /></td>
valuestack,stackContext,ActionContext.之间的关系以及action的数据在页面中取得的方法的更多相关文章
- valuestack,stackContext,ActionContext.之间的关系
者之间的关系如下图所示: relation ActionContext 一次Action调用都会创建一个ActionContext 调用:ActionContext context = ActionC ...
- [转] valuestack,stackContext,ActionContext.之间的关系
三者之间的关系如下图所示: ActionContext 一次Action调用都会创建一个ActionContext 调用:ActionContext context = ActionContext ...
- valuestack,stackContext,ActionContext.之间的关系以及如何存取数值的
2013-03-15 10:54 1722人阅读 评论(1) 收藏 举报 分类: J2EE 版权声明:本文为博主原创文章,未经博主允许不得转载. 三者之间的关系如下图所示: ActionCont ...
- struts2(四) ognl表达式、值栈、actionContext之间的关系
今天来说说ognl表达式在struts2中的运用. --wh 一.什么是Ognl? 通过百度百科查询到的解释,其中详细的说明了OGNL的作用. 下面我们就对OGNL这5个作用进行讲解 1.存取对象的任 ...
- Struts2学习(四)———— ognl表达式、值栈、actionContext之间的关系
一.什么是Ognl? 通过百度百科查询到的解释,其中详细的说明了OGNL的作用. 下面我们就对OGNL这5个作用进行讲解 1.存取对象的任意属性,简单说就是对javabean进行操作(重要) 2.调用 ...
- OGNL valueStack StackContext(ActionContext)深入分析(转+个人理解)
//还会补充 首先要有一个意识 ,为什么要了解这个?: struts2中的表单是怎么通过表达式(EL or OGNL)来传给Action 和 拿到Action的值的. 值栈(根)对象也可以直接使用EL ...
- java:struts2.3框架1(struts2快速配置,各文件之间的关系,基础代码简化版,XML中的通配符)
1.struts2快速配置: A.到http://struts.apache.org下载struts2开发包struts-2.3.32-all.zip B.新建web项目并添加struts2依赖的ja ...
- 在action中将字符串、对象、list集合保存到值栈中,在jsp页面中获取的方法
转自:csdn 封装对象User,属性有id,username,email等1.1:在action中将字符串保存到值栈中 1.1.1 获取值栈对象 ValueStack stack ...
- struts2中的session、request 、和action往页面中传值的方法
ActionContext.getContext().put("list", list); ActionContext.getContext().getValueStack().p ...
随机推荐
- 【读书笔记】【深入理解ES6】#1-块级作用域绑定
var声明及变量提升(Hoisting)机制 在函数作用域或全局作用域中通过var关键字声明的变量,无论实际上是在哪里声明的,都会被当成在当前作用域顶部声明的变量.这就是我们常说的提升(Hoistin ...
- Linux学习笔记 (二)常用linux命令
一.命令行语法: 命令字 [选项] [参数] 注意:Linux中对命令是区分大小写的. 二.获取命令帮助: 1.help命令:help xxx,shell内部指令,用来获取linux内部命令.例如:h ...
- ES7新特性
Array.prototype.includes Array.prototype.includes用法都容易和简单.它是一个替代indexOf,开发人员用来检查数组中是否存在值,indexOf是一种尴 ...
- C++ 模板详解(二)(转)
四.类模板的默认模板类型形参 1.可以为类模板的类型形参提供默认值,但不能为函数模板的类型形参提供默认值.函数模板和类模板都可以为模板的非类型形参提供默认值. 2.类模板的类型形参默认值形式为:tem ...
- 设计模式之十八:桥接模式(Bridge)
桥接模式: 将抽象部分和它的实现部分相分离开来,以使它们能够单独地变化. UML图: 主要包含: Abstraction:定义了抽象部分的接口.操作一个实现部分对象的引用. RefinedAbstra ...
- 腾讯云DevOps 解决方案
地址:https://www.qcloud.com/solution/devops 主要经历的几个阶段: 代码托管 持续集成与交互 测试管理 运维监控 项目管理 在上面图中都有,可以回过去查看.
- Android源码在线查看网址
1 http://www.grepcode.com/project/repository.grepcode.com/java/ext/com.google.android/android/
- svn client命令
经常使用svn命令说明 1.从SVN仓库中检索出代码到工作拷贝: # svn checkout https://svn.sinaapp.com/appname [workcopy] 当中workcop ...
- Atitit.5gl 第五代语言编程语言 PROLOG教程 人工智能语言的标准 与实现
Atitit.5gl 第五代语言编程语言 PROLOG教程 人工智能语言的标准 与实现 1. 第五代语言就是自然语言又被称为知识库语言或人工智能语言,1 2. 人工智能语言特点2 2.1. 试探法2 ...
- 专用于高并发的map类-----Map的并发处理(ConcurrentHashMap)
oncurrentModificationException 在这种迭代方式中,当iterator被创建后集合再发生改变就不再是抛出ConcurrentModificationException, 取 ...