`
234390216
  • 浏览: 10233606 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
博客专栏
A5ee55b9-a463-3d09-9c78-0c0cf33198cd
Oracle基础
浏览量:462666
Ad26f909-6440-35a9-b4e9-9aea825bd38e
springMVC介绍
浏览量:1775567
Ce363057-ae4d-3ee1-bb46-e7b51a722a4b
Mybatis简介
浏览量:1398398
Bdeb91ad-cf8a-3fe9-942a-3710073b4000
Spring整合JMS
浏览量:395029
5cbbde67-7cd5-313c-95c2-4185389601e7
Ehcache简介
浏览量:680003
Cc1c0708-ccc2-3d20-ba47-d40e04440682
Cas简介
浏览量:530911
51592fc3-854c-34f4-9eff-cb82d993ab3a
Spring Securi...
浏览量:1184068
23e1c30e-ef8c-3702-aa3c-e83277ffca91
Spring基础知识
浏览量:467997
4af1c81c-eb9d-365f-b759-07685a32156e
Spring Aop介绍
浏览量:151405
2f926891-9e7a-3ce2-a074-3acb2aaf2584
JAXB简介
浏览量:68170
社区版块
存档分类
最新评论

Struts2的OGNL调用公共静态方法

阅读更多

一直以来都知道Struts2的OGNL支持在前台调用后台的静态方法,以前也用过,但用的比较少,今天自己重新开始了一个新的项目,在实现一个功能的时候用到了Struts2的在前台调用后台的静态方法,弄了半天没有出来结果,原来是自己没有在Struts的配置文件里面申明可以在前台使用后台的静态方法,故写出来供自己以后参考参考,并以此为教训。

 

假设有一个com.xxx.util.Util类,其中有一个叫sayHello的公共静态方法:

public static String sayHello(String name) {
		return "HELLO " + name;
	}

 

那么在前台就可以这样来调用该静态方法:

<:property value="@com.xxx.util.Util@sayHello('tiantian')"/>

 

要使在前台能够顺利的调用后台的公共静态方法,还需要在Struts的配置文件里面申明可以在前台调用后来的静态方法

<constant name="struts.ognl.allowStaticMethodAccess" value="true"></constant>  
0
1
分享到:
评论
1 楼 wapwzp123 2012-06-01  
要是<:property value="@com.xxx.util.Util@sayHello('tiantian')"/>中的参数值为空或null时 就调用不了,lz遇到这样的问题没。。

相关推荐

    Struts2 OGNL调用公共静态方法详细介绍

    Struts2 OGNL调用公共静态方法 一直以来都知道Struts2的OGNL支持在前台调用后台的静态方法,以前也用过,但用的比较少,今天自己重新开始了一个新的项目,在实现一个功能的时候用到了Struts2的在前台调用后台的静态...

    Struts2_OGNL

    OGNL(Object-Graph Navigation Language)是Struts2框架中的一个重要组件,用于在Web应用中访问和操作Java对象的属性,调用其方法,以及执行类型转换等操作。 OGNL是对象图导航语言的缩写,它是一种功能强大的...

    struts2 OGNL语言学习笔记

    在 Struts 2 中,OGNL 是默认的表达式语言,原因是它相对其它表达式语言具有多个优势,例如:支持对象方法调用、支持类静态的方法调用和值访问、支持赋值操作和表达式串联等。 在使用 OGNL 时,经常遇到的问题是 #...

    struts2 ognl表达式

    Struts2 OGNL表达式是Java Web开发中一个重要的概念,它是一种强大的对象图形导航语言(Object-Graph Navigation Language)。在Struts2框架中,OGNL被广泛用于视图层,作为数据绑定的主要手段,使得开发者能够方便...

    很全面的struts2_ognl总结

    在 Struts2 中,可以使用 OGNL 来访问 ValueStack 中的静态方法,例如: &lt;s:property value="@com.bjsxt.struts2.ognl.S@s()"/&gt; 这将调用 com.bjsxt.struts2.ognl.S 类的静态方法 s()。 四、访问 ValueStack 中的...

    struts2 ognl

    这篇概述将深入探讨如何在Struts2中使用OGNL来操作List、Set、Map以及访问方法和静态变量。 1. **OGNL基本概念**:OGNL是基于对象和图形的表达式语言,它允许开发者以简洁的语法动态地访问和修改对象属性。在Struts...

    struts2 标签 OGNL

    Struts2是一个流行的Java web框架,它利用OGNL(Object-Graph Navigation Language)作为其核心表达式语言。OGNL是一种强大的表达式语言,允许开发者在Java对象之间导航和操作数据。在Struts2中,OGNL被广泛用于访问...

    struts2中OGNL的一些概念及原理说明

    ### Struts2中OGNL的概念及原理说明 #### 一、OGNL表达式的基本用法与特点 **OGNL**,即**Object Graphic Navigation Language**(对象图导航语言),是Struts2框架中用于处理对象及其属性的强大工具之一。通过...

    Struts2_OGNL 笔记

    Struts2_OGNL笔记主要关注的是如何在Struts2框架中使用OGNL(Object-Graph Navigation Language)表达式语言。OGNL作为一种强大的表达式语言,常用于Struts2的视图层,允许开发者轻松地访问和操作Java对象的属性。 ...

    ognl struts2

    3. 开启严格模式:在Struts2配置中启用`struts.ognl.allowStaticMethodAccess`为`false`,限制静态方法的调用。 4. 使用最新版本:定期更新Struts2框架,以获取最新的安全补丁。 总结,OGNL在Struts2框架中起着至关...

    ognl与struts2_ognl

    3. **调用静态方法**:在OGNL中,可以使用`@`符号来调用静态方法,如`"@java.lang.Integer@toBinaryString(10)"`。如果方法属于默认类(如`java.lang.Math`),可以直接使用`@@`来调用,如`"@@min(4,5)"`。 4. **...

    Struts 2中的OGNL教程

    2. **支持类静态的方法调用和值访问**:可以通过特定格式(`@[类全名(包括包路径)]@[方法名|值名]`)访问静态方法或常量,例如 `@java.lang.String@format('foo%s', 'bar')` 或 `@tutorial.MyConstant@APP_NAME`。...

    Struts2的标签库及OGNL表达式语言

    访问`A`类的静态变量`a`,`@net.ilkj.ognl.A@findA()`调用静态方法`findA()`。 **Struts2的标签库** Struts2的标签库分为UI标签(UI Tags)和非UI标签(Non-UI Tags)。UI标签主要用于创建HTML表单,而非UI标签则...

    精通struts2的ognl表达式

    3. **动态方法调用**:OGNL支持静态方法的调用,这使得开发者能够通过OGNL表达式直接调用类的方法,而不必显式创建该类的实例。 4. **集合操作**:通过OGNL可以方便地进行集合操作,如遍历列表、筛选元素等。 ####...

    struts2_ognl基本用法.doc

    ### Struts2 OGNL 基本用法详解 #### 一、访问值栈中的Action及对象属性 OGNL(Object-Graph Navigation Language)是Struts2框架中用于访问和操作Java对象的一种强大表达式语言。在Struts2中,OGNL主要用于访问值...

    ognl表达式java使用案例详解(测试通过)

    2、支持类静态的方法调用和值访问,表达式的格式为@[类全名(包括包路径)]@[方法名 | 值名],例如:@java.lang.String@format('foo %s', 'bar')或@tutorial.MyConstant@APP_NAME; 3、支持赋值操作和表达式串联...

    struts2标签和OGNL表达式

    相比EL(Expression Language)表达式,OGNL提供更丰富的功能,如对象方法调用、静态方法调用、值访问以及对集合对象的操作。它的上下文(Context)是一个Map结构,允许存储和访问不同类型的对象,如ActionContext,...

    struts ognl

    3. 开启`struts.ognl.allowStaticMethodAccess`为false,禁止静态方法调用。 4. 使用`ognl.OgnlValueStack`的`setStrictSecurityManager`方法启用严格的表达式执行策略。 五、示例与实践 让我们通过一个简单的例子...

Global site tag (gtag.js) - Google Analytics