使用OGNL访问对象方法和静态方法

  • 内容
  • 评论
  • 相关

除了在 JSP 页面中可以使用 OGNL 表达式以外,OGNL 还支持在 Java 代码中访问对象方法和静态方法,接下来本节中将讲解 OGNL 是如何调用方法的。

1. OGNL访问对象方法

OGNL 表达式通过“对象名.方法名()”的形式调用对象方法表达式,如果是调用根对象的方法,则可以直接使用方法的名称调用,其调用语法如下所示:

Ognl.getValue("方法名",对象名);

其实无论 OGNL 表达式以哪种方式取值或者调用方法,最终都是调用其本身的 getValue() 方法。接下来通过一个案例演示 OGNL 如何在 Java 代码中调用对象方法。

在 StrutsDemo05 项目的 com.mengma.ognl 包中创建一个名为 TestOgnl01 的类,编辑后如下所示。

package com.mengma.ognl;

import ognl.OgnlException;

public class TestOgnl01 {
    public static void main(String[] args) {
        Person person = new Person();
        person.setName("admin");
        try {
            System.out.println(ognl.Ognl.getValue("name", person));
        } catch (OgnlException e) {
            e.printStackTrace();
        }
    }
}

上述代码的输出语句中,使用了 OGNL 表达式的方式获取 Person 对象中的 name 属性值,运行 main() 方法后,控制台的输出结果如图 1 所示。

使用OGNL调用对象的输出结果
图 1  使用OGNL调用对象的输出结果

本文标题:使用OGNL访问对象方法和静态方法

本文地址:https://www.hosteonscn.com/5763.html

评论

0条评论

发表评论

邮箱地址不会被公开。 必填项已用*标注