二十二、OGNL的一些其他操作
二十二、OGNL的一些其他操作
- 投影
?判断满足条件
动作类代码: ^ $
public
class
Demo2Action
extends ActionSupport {public Demo2Action() {
System.out.println("实例化了");
}
private List<Person> persons = new ArrayList<Person>();
public List<Person> getPersons() {
return
persons;}
public
void setPersons(List<Person> persons) {this.persons = persons;
}
public String execute() {
// 初始化几个人
persons.add(new Person("wdx", 18));
persons.add(new Person("wd", 28));
persons.add(new Person("cxy", 38));
return
SUCCESS;}
}
Jsp代码:
,则输出 -->
<!--会用p为key ,当前遍历的元素为value,放到contextMap中 -->
<s:iterator
value="persons.{?#this.age>20}"
var="p"><s:property
value="#p.username"/><s:property
value="#p.age"/></s:iterator>
<hr/>
<!-- persons.{username} 这个集合已经改变了,[wdx, wd, cxy],因此变量指向的是一个String字符串 -->
<!--会用p为key ,当前遍历的元素为value,放到contextMap中 -->
<s:iterator
value="persons.{username}"
var="p"><s:property
value="#p"/></s:iterator>
<s:debug></s:debug>
- 创建集合对象
<s:iterator
value="{'aa','bb','cc'}"
var="s"><s:property
value="#s"
/><br/></s:iterator>
<br/>----利用OGNL表达式创建一个Map---<br/>
<s:iterator
value="#{'a':'aa', 'b':'bb','c':'cc'}}"
var="me"><s:property
value="#me.key"/>=<s:property
value="#me.value"/></s:iterator>
<s:debug></s:debug>
- OGNL中的%{}操作符的用法
作用:把普通字符串当做OGNL表达式来用
<%
Person p = new Person("王雪",19);
ActionContext.getContext().getValueStack().push(p);
%>
<!-- UI标签中的lable属性的取值,不是一个OGNL表达式,如果要把一个普通字符串当做OGNL表达式,请使用%{} -->
<s:textfield
name="uname"
label="%{username}"></s:textfield><s:debug></s:debug>
知识:把OGNL表达式当做普通字符串对待,请使用单引号或双引号
- OGNL中的$用法
- 在struts.xml配置文件和国际化消息资源文件中,使用OGNL,放在${}中
以下是在配置文件中使用OGNL表达式
- 在JSP中使用${}
EL表达式还是原有功能,如果在域范围中找不到,{}内部的东西就变成了OGNL表达式。
二十二、OGNL的一些其他操作的更多相关文章
- WCF技术剖析之二十二: 深入剖析WCF底层异常处理框架实现原理[中篇]
原文:WCF技术剖析之二十二: 深入剖析WCF底层异常处理框架实现原理[中篇] 在[上篇]中,我们分别站在消息交换和编程的角度介绍了SOAP Fault和FaultException异常.在服务执行过 ...
- VMware vSphere 服务器虚拟化之二十二桌面虚拟化之创建View Composer链接克隆的虚拟桌面池
VMware vSphere 服务器虚拟化之二十二桌面虚拟化之创建View Composer链接克隆的虚拟桌面池 在上一节我们创建了完整克隆的自动专有桌面池,在创建过程比较缓慢,这次我们将学习创建Vi ...
- 备忘录模式 Memento 快照模式 标记Token模式 行为型 设计模式(二十二)
备忘录模式 Memento 沿着脚印,走过你来时的路,回到原点. 苦海翻起爱恨 在世间难逃避命运 相亲竟不可接近 或我应该相信是缘份 一首<一生所爱>触动了多少 ...
- iOS 11开发教程(二十二)iOS11应用视图实现按钮的响应(2)
iOS 11开发教程(二十二)iOS11应用视图实现按钮的响应(2) 此时,当用户轻拍按钮后,一个叫tapButton()的方法就会被触发. 注意:以上这一种方式是动作声明和关联一起进行的,还有一种先 ...
- JAVA基础知识总结:一到二十二全部总结
>一: 一.软件开发的常识 1.什么是软件? 一系列按照特定顺序组织起来的计算机数据或者指令 常见的软件: 系统软件:Windows\Mac OS \Linux 应用软件:QQ,一系列的播放器( ...
- SQL注入之Sqli-labs系列第二十一关(基于复杂性的cookie POST报错注入)和二十二关(基于双引号的cookie POST报错注入)
开始挑战第二十一关(Cookie Injection- Error Based- complex - string) 和二十二关(Cookie Injection- Error Based- Doub ...
- 「kuangbin带你飞」专题二十二 区间DP
layout: post title: 「kuangbin带你飞」专题二十二 区间DP author: "luowentaoaa" catalog: true tags: - ku ...
- 剑指Offer(二十二):从上往下打印二叉树
剑指Offer(二十二):从上往下打印二叉树 搜索微信公众号:'AI-ming3526'或者'计算机视觉这件小事' 获取更多算法.机器学习干货 csdn:https://blog.csdn.net/b ...
- Senparc.Weixin.MP SDK 微信公众平台开发教程(二十二):如何安装 Nuget(dll) 后使用项目源代码调试
最近碰到开发者问:我使用 nuget 安装了 Senparc.Weixin SDK,但是有一些已经封装好的过程想要调试,我又不想直接附加源代码项目,这样就没有办法同步更新了,我应该怎么办? 这其实是一 ...
随机推荐
- sql server 2008 评估期已过期如何升级
1, http://wenku.baidu.com/view/49c88e2ab4daa58da0114af4.html 2, #BYTECH# ##
- haxm intelx86加速模拟器的安装
http://blog.csdn.net/huang9012/article/details/18082601 如果安装了还出现 创建模拟器 选项 CPU/abi的时候还出现 no system im ...
- UBUNTU查看软件版本
1.查看已安装软件版本aptitude show softwarename 2.查看软件安装目录dpkg -L softwarename
- fatal error C1853: '*.pch' is not a precompiled header file created with this compile
在菜单下选择Build--->点击Rebuild All,如果不起作用,你可以先把Debug或者Release中的文件删除,然后再试.
- [ActionScript 3.0] Away3D 天空盒(skybox)例子
/* SkyBox example in Away3d Demonstrates: How to use a CubeTexture to create a SkyBox object. How to ...
- 使用 cURL 获取站点的各类响应时间 – dns解析时间,响应时间,传输时间
http://zhangrenfang8738.blog.163.com/blog/static/95401881201142711450245/ curl监控站点响应时间 2011-05-27 11 ...
- ext 3.2 tree 在IE10中点击事件失效的bug
ext3.2 中的tree在IE中进行兼容性测试,遇到IE10时,无法点击,其他版本的IE(7.8.9.11)均正常.此bug是由于ext-all.js中的getAttributeNS方法不能兼容IE ...
- 一些代码 I (斐波那契、for...else...、try和return、classmethod、统计个数)
1. 斐波那契 from itertools import islice def fib(): a, b = 0, 1 while True: yield a a, b = b, a+b print ...
- [HDU 2126] Buy the souvenirs (动态规划)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2126 题意:给你n个物品,m元钱,问你最多能买个多少物品,并且有多少种解决方案. 一开始想到的是,先解 ...
- HTML控件-Select
从今天开始,编写对于html控件的特性的探索文章,会广泛的引用网络的资源,所以本文的版权属于广大人民群众,欢迎转载,也同样禁止商业应用. [高手勿喷,标签页点击红色叉叉] select控件有一个特性: ...