`
younglibin
  • 浏览: 1195993 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

OGNL表达式语言基础简介

    博客分类:
  • OGNL
 
阅读更多
OGNL表达式语言


一    常量

<o:p></o:p>

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’

<o:p></o:p>

++  --
foo++

==   !=
  <o:p></o:p>

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 }

<o:p></o:p>

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  的集合

分享到:
评论

相关推荐

    ognl guide

    ognl的相关介绍和基础知识及用法(语言指南:语法;表达式;对象到数据类型的强制转换)

    Struts2 in action中文版

    6.7 OGNL表达式语言的基础知识 130 6.7.1 什么是OGNL 130 6.7.2 Struts 2中常用的表达式语言特性 131 6.7.3 表达式语言的高级特性 135 6.8 小结 137 第7章 UI组件标签 139 7.1 为什么需要UI组件标签 139 7.2 标签、...

    struts2讲义_吴峻申

    5.2 OGNL表达式语言介绍 75 5.3 Struts2控制标签简介 79 5.3.1 append标签使用介绍 79 5.3.2 generator标签使用介绍 80 5.3.3 if、else、elseif标签使用介绍 81 5.3.4 iterator标签使用介绍 82 5.3.5 merge标签使用...

    struts2深入浅出(备java基础,javaweb,javaee,框架)

    Struts2框架介绍、工作原理与架构分析、6大配置文件分析使用通配符定义action、动态方法调用,ActionContext及ServletActionContext...默认拦截器分析、自定义拦截器、OGNL表达式、值栈分析及操作、标签、 json使用。

    达内java培训目录

    Java语言基础 算法基础、常用数据结构、企业编程规范。 掌握常见的数据结构和实用算法;培养良好的企业级编程习惯。 Java面向对象 面向对象特性:封装、继承、多态等,面向对象程序设计,基础设计模式等。 掌握面向...

    Java Web程序设计教程

    5.4值栈与ognl表达式 100 5.5struts2的标签库 103 5.5.1控制标签 103 5.5.2数据标签 104 5.5.3表单标签 105 5.5.4非表单ui标签 107 本章小结 108 课后练习 109 第6章struts2高级应用 110 6.1拦截器 110 ...

    Java Web编程宝典-十年典藏版.pdf.part2(共2个)

    9.2 OGNL表达式语言 9.2.1 认识OGNL 9.2.2 Struts2框架中的OGNL 9.2.3 操作普通的属性与方法 9.2.4 访问静态方法与属性 9.2.5 访问数组 9.2.6 访问List、Set、M印集合 9.2.7 投影与选择 9.3 Struts2的标签库 9.3.1 ...

    Java学习笔记-个人整理的

    {3.4}正则表达式}{71}{section.3.4} {3.5}StringBuffer}{75}{section.3.5} {3.6}StringBuilder}{76}{section.3.6} {3.7}StringBuilder与StringBuffer的缺点}{76}{section.3.7} {3.8}内部类}{77}{section.3.8} ...

    springmybatis

    (读者注:其实这个应该叫做很基础的入门一下下,如果你看过Hibernate了那这个就非常的简单) (再加一条,其实大家可以看官方的教程更好些:http://mybatis.github.io/mybatis-3/,而且如果英文不是很好的那就看...

Global site tag (gtag.js) - Google Analytics