注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

zhouhaigang.love的博客

喜欢冬日黄昏那冻住的山

 
 
 

日志

 
 

ognl  

2008-11-28 17:26:23|  分类: 默认分类 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

OGNL表达式语言

 

一    常量

 

Char

‘a’

String

‘hello’ 或 “hello”

单个字符 /”a/”

Boolean

true | false

Int

123

 

注意:string可以用单引号也可以用双引号。但是单个字母 如’a’与”a”是不同的,前者是char, 后者是string。

       <ww:property  value=”\”a\””>  或<ww:property  value’”a”’>

 

二    操作符号

+

-

*

/

mod

1+1    ‘hello’+’world’

 

++  --

foo++

==   !=

 

in    not in

foo in aList

赋值

foo=1

 

三    方法调用

class Muppet{

       int fun();

}

调用:fun()-10

 

四    访问静态方法和变量

@some.pkg.SomeClass@CONSTANTS

@some.pkg.SomeClass@someFun()

 

五    context

ActionContext().getContext().getSession().get(“kkk”)

#session.kkk

ActionContext().getContext().get(“person”)

#person

# 符号相当于ActionContext.

ActionContext 中的主要对象: parameters, attr, request, session, application

 

六    集合操作

list & array访问

list.get(0)    array[0]

list[0]    array[0]

list.get(0).getName()   

list[0].name

list.size()   array.length

list.size         array.length

list.isEmpty()

list.isEmpty

List list = new ArrayList()

list.ad(“foo”);  list.add(“bar”);

{“foo”, “bar”}

{1,2,3}

 

Map

map.get(“foo”)

map[‘foo’]   或   map.foo

map.get(1)

map[1]

Map map = new HashMap()

map.put(“k1”, “v1”);   map.put(“k2”,”v2”);

#{“k1”:”v1”, “k2”:”v2”}

 

 

 

七    筛选 与投影

筛选 collection.{? expr }:    #this 代表当前循环到的object

投影 collection.{ expr }

 

children.{name}

(投影)得到 Collection<String> names, 只有孩子名字的list

children.{?#this.age>2}

(筛选)得到 collection<Person> age>2的记录

children.{?#this.age<=2}.{name}

先筛选再投影

children.{name+’->’+mother.name}

(筛选)得到元素为 str->str  的集合

 

NOTE : #的三种用途

1.       引用 ActionContext 中的object       #person 

2.       动态创建map                        #{1:’a’, 2:’b’}

3.       对集合进行筛选(#this)               #this

  评论这张
 
阅读(89)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018