- 浏览: 164966 次
- 性别:
- 来自: 杭州
文章分类
最新评论
-
zhousheng193:
非常感谢LZ
在JSP页面及servlet的doGet()方法中处理汉字乱码的问题 -
jie523314:
学习下。。。
读取XML文件
ognl表达式的使用如下面的例子:
总的来说,就是
action里面的私有属性,在页面里面我们可以用EL表达式取到,也可以
<s:property value="name"/>取到,不过action里面的私有属性必须要有自己的set|get方法
这样底层的拦截器才能对其数据封装,页面也才能取得到,这样在struts.xml的配置里面我们也是可以使用EL表达式来获得action类的属性变量值(struts2里面的action可以implements Action接口,也可以是一个普通的java类,不过方法的必须要有返回值,且返回类型为String型。在配置struts.xml的时候对action的进行注册,但是package必须要继承struts-default)
因为:
这样我们就可以在action页面的获取页面提交的属性值。
同样我们也可以使用ActionContext.getContext()这个对象来获得页面的请求的域,和action的配置信息页面的属性必需在action里面进行set|get方法后才能在action里面获取值,页面也可以取到服务器返回的
他的属性,而这个属性范围为root对象。
同时还有request|session|appliaction三个域都放在valuestack里面,而页面获取对象时,root对象可以直接用struts标签获取,其他三个对象要在他的name名前面加上‘#’才能取出来
<h1>${name}</h1>
<hr>
获取Action属性:<s:property value="name"/>
<br>
获取Reqeust属性:<s:property value="#request.name"/><br>
获取Session属性:<s:property value="#session.name"/><br>
获取Application属性:<s:property value="#application.name"/><br>
<hr>
总的来说,就是
action里面的私有属性,在页面里面我们可以用EL表达式取到,也可以
<s:property value="name"/>取到,不过action里面的私有属性必须要有自己的set|get方法
这样底层的拦截器才能对其数据封装,页面也才能取得到,这样在struts.xml的配置里面我们也是可以使用EL表达式来获得action类的属性变量值(struts2里面的action可以implements Action接口,也可以是一个普通的java类,不过方法的必须要有返回值,且返回类型为String型。在配置struts.xml的时候对action的进行注册,但是package必须要继承struts-default)
因为:
<default-class-ref class="com.opensymphony.xwork2.ActionSupport" />
这样我们就可以在action页面的获取页面提交的属性值。
同样我们也可以使用ActionContext.getContext()这个对象来获得页面的请求的域,和action的配置信息页面的属性必需在action里面进行set|get方法后才能在action里面获取值,页面也可以取到服务器返回的
他的属性,而这个属性范围为root对象。
同时还有request|session|appliaction三个域都放在valuestack里面,而页面获取对象时,root对象可以直接用struts标签获取,其他三个对象要在他的name名前面加上‘#’才能取出来
引用
<h1>${name}</h1>
<hr>
获取Action属性:<s:property value="name"/>
<br>
获取Reqeust属性:<s:property value="#request.name"/><br>
获取Session属性:<s:property value="#session.name"/><br>
获取Application属性:<s:property value="#application.name"/><br>
<hr>
package tarena.actions; import java.util.ArrayList; import java.util.List; import java.util.Map; import javax.servlet.http.HttpServletRequest; import org.apache.struts2.ServletActionContext; import com.opensymphony.xwork2.ActionContext; public class OgnlAction { private String name; private List list = new ArrayList(); public List getList() { return list; } public void setList(List list) { this.list = list; } public String execute(){ name = "张三";//为name属性设置值 Person p = new Person("1001","男");//为list属性添加一个Person对象 list.add(p); //获取request,并添加信息 // Map request = (Map)ActionContext.getContext().get("request"); HttpServletRequest request1 = ServletActionContext.getRequest(); request1.setAttribute("name", "request value"); // 获取session,并添加信息 Map session = ActionContext.getContext().getSession(); session.put("name", "session value"); // 获取application,并添加信息 Map application = ActionContext.getContext().getApplication(); application.put("name", "application value"); return "ognl"; } public String getName() { return name; } public void setName(String name) { this.name = name; } }
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ taglib uri="/struts-tags" prefix="s" %> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Insert title here</title> </head> <body> <h1>${name}</h1> <hr> 获取Action属性:<s:property value="name"/> <br> 获取Reqeust属性:<s:property value="#request.name"/><br> 获取Session属性:<s:property value="#session.name"/><br> 获取Application属性:<s:property value="#application.name"/><br> <hr> 获取Action中List属性信息 <s:property value="list[0].no"/> <s:property value="list[0].sex"/> <hr> 方法调用<s:property value="name.length()"/><br> 静态属性:<s:property value="@java.lang.Math@PI"></s:property> </body> </html>
- day02.zip (19.9 KB)
- 下载次数: 7
发表评论
-
struts2的select标签的标签显示问题
2010-09-20 20:00 861引用使用select的标签的时候第一个显示标签怎么都弄不出来纠 ... -
解决long类型转换成date类型的转换通过struts2在页面显示
2010-09-20 17:05 1245由于数据库里面的时间类型统一的为long类型,但是到页面取值的 ... -
何时使用转发,何时使用重定向
2010-09-19 12:45 1651转发:两个jsp共享一个request请求 重定向:放弃当前r ... -
struts标签的使用总结
2010-09-17 21:01 690总结了好久才做到了 自己想要的标签使用方法,具体看代码 ... -
jsp页面导入外部文件的3种方法
2010-09-15 13:27 1779第一种: jsp 的include指令引入外部文件 <% ... -
WARN - Got result of null when trying to get Boolean.
2010-09-12 18:50 1749今天,真倒霉给注册页面添加框架验证结果却是 WARN - G ... -
Struts2内建拦截器的简要介绍
2010-09-07 19:14 921Struts2内建拦截器的简要介绍 ali ... -
struts2自定类型转换器
2010-09-04 14:28 730类型转换 a.自定类型转换器 ... -
taglib引入struts标签的使用
2010-09-03 21:01 1420<%@ page language="java ... -
熟悉Struts2的配置文件
2010-09-03 19:28 628熟悉Struts2的配置文件 a.内置配置文件 s ... -
struts2国际化配置(+页面下拉修改)
2010-09-03 19:01 1356可以用struts.xml或struts.properties ... -
深入Struts2的配置文件
2010-09-03 13:53 1185struts.xml文件中每个元素的含义. 1) Bean ... -
struts2的基本流程(转)
2010-09-03 10:21 897大致上 ,Struts2 框架由三个部分组成 : ... -
初步理解和使用Struts2拦截器的原理与实现
2010-09-02 11:23 1224一、理解Struts2拦截器 1. Struts2拦截器是在 ... -
The Struts dispatcher cannot be found
2010-09-02 09:42 986The Struts dispatcher cannot be ... -
struts2.0笔记(1)
2010-08-30 19:51 672了解Struts2发展历程及其特点 a.支持 ... -
两种方式修改struts2的访问路径以.do为结尾的方式
2010-08-30 19:24 1416struts2的核心包中找到:org.apache.strut ... -
帮你彻底解决eclipse(myeclipse)中写struts.xml配置文件时,没有提示功能的烦恼
2010-08-30 18:30 2252其实,在自己写struts.xml ... -
struts2基本配置(基本一个登陆)
2010-08-30 17:55 928一、导struts2的包几个包 1.struts2-c ...
相关推荐
这篇博客文章可能详细探讨了如何在Struts2中使用OGNL来传递和操作数据。 OGNL是Struts2的核心组件之一,它允许开发者通过简单的字符串表达式来访问和修改对象的属性,甚至可以处理复杂的对象结构。以下是一些关于...
在“struts2-OGNL表达式测试”中,你可能会看到各种OGNL表达式的使用示例,比如访问和修改对象属性、动态调用方法、处理集合和执行条件判断等。通过这些测试,你可以更好地理解和掌握OGNL在实际开发中的运用,确保在...
本文将深入探讨如何在Struts2中有效地使用OGNL表达式。 首先,OGNL是Struts2的核心组成部分,它允许开发者在Action类和JSP页面之间灵活地传递和访问数据。在Action类中,你可以设置属性,然后在JSP页面上通过OGNL...
### OGNL表达式的理解和应用 #### 一、OGNL简介与基本概念 OGNL(Object-Graph Navigation Language)是一种强大的表达式语言,用于获取和设置Java对象的属性。它是Struts2框架中的默认表达式语言,同时也被广泛...
### 精通Struts2中的OGNL表达式 在深入探讨Struts2框架的核心功能时,理解并熟练掌握OGNL(Object-Graph Navigation Language)表达式的应用是至关重要的一步。OGNL是一种强大的表达式语言,它允许开发者通过简洁、...
在Struts2中,OGNL被用作默认的表达式语言,用于在Action类和JSP页面之间传递数据,以及在Action上下文中进行动态方法调用。 在Struts2的配置文件中,如struts.xml或struts.properties,你可以看到OGNL表达式的使用...
在Struts2中,OGNL表达式可以嵌入到各种基本标签中,如`s:textfield`, `s:property`, `s:action`等,以实现动态的数据展示和交互。例如,`<s:property value="%{#session.user.name}" />`会将session中user对象的...
本篇文章将详细探讨Struts2中的OGNL表达式语言以及标签库。 **OGNL(对象图导航语言)** OGNL是一种强大的表达式语言,它允许开发者通过简洁的语法来访问和操作对象的属性。在Struts2框架中,OGNL扮演着至关重要的...
下面是OGNL表达式的使用方法: 访问基本属性 1. 访问值栈中action的普通属性: 2. 访问值栈中对象的普通属性: 3. 访问值栈中对象(对象包含对象)的普通属性: 4. 访问值栈中对象的普通方法:().length()"/> 5. ...
本案例提供ognl使用详解,测试通过,只需解压放入自己WEB项目中,执行struts_ognl包内java文件即可(未提供jia包,若需要可以联系留言发至邮箱),若测试不好可以联系本人提供指导. Struts 2默认的表达式语言是OGNL...
其中,OGNL(Object-Graph Navigation Language)是Struts2中的核心表达式语言,用于数据绑定和表示层的数据操作。这篇深入学习的文章主要探讨了OGNL表达式的原理和使用。 首先,我们来理解一下OGNL是什么。OGNL是...
- **#**:通常用于表示OGNL表达式,在Struts2中作为OGNL表达式的开头标记。 - **%**:用于指定JSP页面的编码格式,如`;charset=utf-8" pageEncoding="utf-8" %>`。 - **$**:在JSP页面中表示EL表达式的开头,但在...
本文将深入探讨OGNL的基本用法、标签的使用以及其在Struts2中的实际应用。 1. **OGNL基本概念** - OGNL是一种表达式语言,用于获取和设置对象属性。它支持点号和索引访问、方法调用、运算符、集合操作等。 - 例如...
其中,OGNL(Object-Graph Navigation Language)是Struts2中的核心表达语言,用于在视图层与模型层之间传递数据。在深入理解OGNL的源码之前,我们首先需要了解OGNL的基本概念和用法。 OGNL是一种强大的表达式语言...
在Struts2中,OGNL表达式通常与Struts标签结合使用,如`s:property`标签,用于显示对象的属性值。例如,`<s:property value="name"/>`将显示栈顶对象的"name"属性值。栈顶对象是指在ValueStack(值栈)中位于最顶层...
- **框架集成**:许多 Java 框架,如 Struts2、Hibernate Validator 等,都集成了 OGNL 表达式用于数据绑定和验证。 - **模板引擎**:在模板引擎中使用 OGNL 表达式来动态渲染页面。 - **业务逻辑处理**:在复杂的...
在Struts2中,EL用于在JSP页面中简洁地访问对象属性和方法。EL表达式通常以${}的形式出现,如${expression}。 Struts2的值栈(Value Stack)是一个重要的概念,它用于存储Action中的数据,并且在JSP页面中通过OGNL...
在Struts2中,OGNL可以用来访问Action中的属性、方法,也可以用来访问ValueStack中的数据。在本文中,我们将通过实例代码来详细介绍OGNL的使用。 实例1:访问Action中的属性 在Struts2中,我们可以使用OGNL来访问...
Struts2是一个流行的Java Web...总之,OGNL是Struts2中的关键工具,使开发者能够灵活地处理数据和控制流程。通过实践这个“Struts2 OGNL用法项目”,你可以深入学习OGNL的强大功能,并提升在Struts2框架下的开发能力。