问答详情
源自:4-11 处理结果类型——局部结果与全局结果

ojnl什么叫

请问什么是ojnl

提问者:sugar邱 2016-10-25 08:26

个回答

  • 平凡某某某
    2016-10-25 11:56:09

        OGNL是Object-Graph Navigation Language的缩写,它是一种功能强大的表达式语言,简称EL。struts2默认的标签语言就是OGNL。

    它有一下几大优势:

                 1、支持对象方法调用,形式如:objName.methodName();

                 2、支持类静态的方法调用和值访问,表达式的格式为@[类全名(包括包路)]@[方法名 | 值名],例如:

                       @java.lang.String@format('foo%s','bar')或@tutorial.MyConstant@APP_NAME;

                 3、支持赋值操作和表达式串联,例如: price=100,discount=0.8, calculatePrice(),这个表达式会返回80;

                 4、访问OGNL上下文(OGNL context)和ActionContext(都指的是action上下文); #xxxx,#xxxx. xxxx,#xxxx.xxxxx. xxxx. xxxx. xxxx

                 5、操作集合对象。

                 6、OGNL表达式中能使用的操作符基本跟Java里的操作符一样,除了能使用 +, -, *, /, ++, --, ==, !=, = 等操作符之外,还能使用 mod, in, not in等。(引号内)