struts2: OGNL表达式、OGNL表达式与struts2结合

本文介绍OGNL(对象视图导航语言)的基础概念及其在Struts2框架中的应用。涵盖OGNL的基本语法如取值、赋值、方法调用等,并讲解了Struts2如何通过ValueStack对象整合OGNL。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

OGNL表达式

OGNL:对象视图导航语言.  ${user.addr.name} 这种写法就叫对象视图导航.

OGNL不仅仅可以视图导航.支持比EL表达式更加丰富的功能.


使用OGNL准备工作

 导包:struts2 的包中已经包含了.所以不需要导入额外的jar包

 代码准备




语法:

基本取值



赋值



调用方法


调用静态方法


创建对象(List,Map)




OGNL与Struts2的结合

结合原理

ValueStack中的两部分


栈原理


栈是由ArrayList模拟的


栈中的两个方法的实现


访问栈中属性的特点.由上到下


查看值栈中两部分内容(使用DEBUG标签)

Root

默认情况下,栈中放置当前访问的Action对象


Context

Context部分就是ActionContext数据中心





struts2与ognl结合体现

参数接收





如何获得值栈对象,值栈对象与ActionContext对象是互相引用的



配置文件中

取出值语法:${ognl表达式}





struts2_day03




一.ognl表达式
准备工作:
1.导包 - 包含在struts2包中
2.OGNLContext
|-Root 任意对象
|-Context Map
语法:
1.取值
2.赋值
3.调用方法
4.调用静态方法
5.创建List|Map

二.OGNL与Struts2的整合

Struts2为ognl准备了一个ValueStack对象,作为ognl取值范围

ValueStack
|-Root
|-Context   ActionContext(数据中心)

栈 => 默认放置当前访问的Action对象
ActionContext 
|- request
|- response
|- servletContext
|- requestScope
|- sessionScope
|- applicationScope
|- parameters
|- attrs
......
OGNL与Struts2结合的应用
|- 参数接收 => struts2中的参数是交给ognl引擎处理
|- 配置文件中 => ${ognl表达式}
|- 标签(今天讲)


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值