struts2 井号,星号,百分号
“#”主要有三种用途:
1. 访问OGNL上下文和Action上下文,#相当于ActionContext.getContext();可以访问这几个ActionContext中的属性:
parameters | #parameters.id[0]作用相当于request.getParameter("id") |
request | #request.userName相当于request.getAttribute("userName") |
session | #session.userName相当于session.getAttribute("userName") |
application | #application.userName相当于application.getAttribute("userName") |
attr按request > session > application顺序 | #attr.userName相当于按顺序在以上三个scope内读取属性,直到找到为止 |
<select id="rolelist" name="filter_EQL_dept.id" style="width: 150px;" class="input2">
<option value="">--请选择--</option>
<s:iterator value="listDepts">
<option value="<s:property value='id'/>"
<s:property value='#parameters["filter_EQL_dept.id"][0] == id ? "selected":""'/>>
<s:property value='deptname'/>
</option>
</s:iterator>
</select>
2. 用于过滤和投影(projecting)集合,如books.{?#this.price<100};
3. 构造Map,如#{'foo1':'bar1', 'foo2':'bar2'},在select和radio标签中经常用到。
“%”的用途是在标志的属性为字符串类型时,计算OGNL表达式的值
<s:url value="%{#foobar['foo1']}" />
“$”有两个主要的用途
1. 用于在国际化资源文件中,引用OGNL表达式。
2. EL表达式 ${sessionScope.user.sex}等于${sessionScope.user["sex"]}
一样的,如果是${username}没有指定scope那么查找顺序是Page---Request---Session---Application
3. 在Struts 2配置文件中,引用OGNL表达式,如:
<action name="downloadCaseFile" class="com.business.action.DownloadFileAction">
<result type="stream">
<param name="contentType">${contentType}</param>
<param name="contentLength">${contentLength}</param>
<param name="contentDisposition">attachment;filename="${filename}"</param>
<param name="inputName">fileStream</param>
<param name="bufferSize">4096</param>
</result>
</action>
分享到:
相关推荐
struts2 OGNL,struts2 表达式语言,Struts2 中OGNL表达式的用法,Struts2 #,表达式语言的好处,Struts2 $,struts2 井号,星号,百分号
本案例提供ognl使用详解,测试通过,只需解压放入自己WEB项目中,执行struts_ognl包内java文件即可(未提供jia包,若需要可以联系留言发至邮箱),若测试不好可以联系本人提供指导. Struts 2默认的表达式语言是OGNL...
struts2中ognl表达式的用法,详细介绍了ognl表达式与struts2基本标签的结合。
最近的项目开发中使用了struts2的框架,但是好多人都不清楚struts2的标签的具体的用法,要想完全掌握struts2标签的用法,那么你必须先精通了struts2中OGNL的用法。struts2中很多东西其实理解就行,但是惟独OGNL虽然...
NULL 博文链接:https://laz383310051.iteye.com/blog/754884
ognl表达式在struts中的用法解析
OGNL表达式语言: 相对EL表达式,它提供了平时我们需要的一些功能,如: ? 支持对象的方法调用 ,如 xxx.sayHello(); ? 支持类静态方法调用和值的访问,表达式的格式为@[类全名]@[方法名|值名],例如:@java....
主要介绍struts2.1 中的ognl中的表达式的用法
Struts2最新版本2.2.1中所设计的核心库文件,包括以下内容: struts2-core-2.2.1.jar:Struts2框架的核心类库。 xwork-core-2.2.1.jar:Xwork核心类库,Struts2在其上构建。 ognl-3.0.jar:对象图导航语言(Object ...
OGNL是Object-Graph Navigation Language的缩写,它是一种功能强大的表达式语言(Expression Language,简称为EL),通过它简单一致的表达式语法,可以存取对象的任意属性,调用对象的方法,遍历整个对象的结构图,...
OGNL是Object-Graph Navigation Language的缩写,它是一种功能强大的表达式语言(Expression Language,简称为EL),通过它简单一致的表达式语法,可以存取对象的任意属性,调用对象的方法,遍历整个对象的结构图,...
struts2 中 OGNL表达式的使用 GNL是Object Graph Navigation Language的简称,详细相关的信息可以参考:http://www.ognl.org。这里我们只涉及Struts2框架中对OGNL的基本支持。 Struts 2默认的表达式语言是OGNL,...
properties文件即i18n国际化多国语言版的用法,struts2前台校验,对输入的数据进行验证validators struts2 OGNL 表达式详解 struts2 #,*,%
1、什么是Struts2 Apache Struts2的是一个在Java中构建Web应用程序... Struts2中自带了很多的标签,并使用OGNL表达式语言。我们可以创造我们自己的类型转换器来呈现的结果页面。结果页面可以JSP和FreeMarker的模板。
struts2中使用ognl表达式语言传参的方法,简化操作,通过jsp页面传递到Action中
9.1 为什么在Struts 2中使用Spring 196 9.1.1 依赖注入能做些什么 197 9.1.2 Spring如何管理对象和注入依赖 199 9.1.3 使用接口隐藏实现 200 9.2 将Spring添加到Struts 2 202 9.2.1 让Spring管理动作、拦截器和结果...
Struts2_03Taglib : Struts2常用标签的使用方法 Struts2默认支持OGNL、JSTL、Groovy和Velcity表达式 Struts2_04ActionResultType : Struts2关于Action跳转类型的应用 对各种不同的跳转类型使用的实例 Struts2_05...
介绍Struts 2及Struts 2开发环境的搭建 第一个Struts 2应用开发 解决Struts 2配置文件无提示问题 Action名称的搜索顺序 Action配置的各项默认值 result配置的各种视图转发类型 为Action属性注入值 指定...
文件的国际化字符串中使用OGNL,格式为${表达式},例如: validation.required=${getText(fileName)} is required 2. 使用java.text.MessageFormat中的字符串格式,格式为{ 参数序号(从0开始), 格式类形(number |...
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标签使用...