博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
struts2框架总结:(三)
阅读量:2052 次
发布时间:2019-04-28

本文共 774 字,大约阅读时间需要 2 分钟。

目录


1 OGNL 表达式

1.1 概念

  • OGNL:对象视图导航语言.  ${user.addr.name} 这种写法就叫对象视图导航.
  • OGNL不仅仅可以视图导航.支持比EL表达式更加丰富的功能.

 

1.2 使用OGNL的准备工作

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

代码准备:

OGNLContext包含两部分的内容,一部分为Root,一部分Context,OGNL表达式可以从这两部分中取任意的数据。

jsp页面中用到的 EL 表达式可以看做是 OGNL 表达式 的一种,不过 OGNL 表达式比 EL 表达式要强大很多倍。

 

 

1.3 OGNL 的语法

1.3.1 基本取值

 

1.3.2 赋值

 

1.3.3 调用方法

 

1.3.4 调用静态方法

 

1.3.5 创建对象(List,Map)

 

 

2 OGNL 与 Struts2 的结合

2.1 结合原理

ValueStack中的两部分

 

2.2 栈原理

2.2.1 栈是由ArrayList模拟的

 

2.2.2 栈中的两个方法的实现

 

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

 

 

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

2.3.1 Root部分

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

 

2.3.2 Context部分就是ActionContext数据中心

 

2.4 struts2与ognl结合体现

2.4.1 参数接收

1,属性驱动获得参数的结合体现

 

2,对象驱动获得参数的结合体现

 

3, 模型驱动获得参数的结合体现

 

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

 

2.4.2 配置文件中

语法: ${ ognl表达式 }

 

2.4.3 struts标签(待定)

2.5 扩展:request对象的getAttribute方法

查询顺序

 

 

 

转载地址:http://iqulf.baihongyu.com/

你可能感兴趣的文章
Grafana 教程 - 构建你的第一个仪表盘
查看>>
由 OOM 引发的 ext4 文件系统卡死
查看>>
什么?WireGuard 可以让躲在 NAT 后面的客户端之间直连了??
查看>>
k8s集群内的节点,可能没你想象的那么健壮!(磁盘管理篇)
查看>>
利用 ebpf sockmap/redirection 提升 socket 性能(2020)
查看>>
春节前最后一波福利,Alibaba Java 训练营]5天突破面向对象编程限时免费报名!...
查看>>
我就要在容器里写文件!?
查看>>
支付宝集五福最全攻略,五分钟集齐五福!
查看>>
Runc 容器初始化和容器逃逸
查看>>
使用 GDB + Qemu 调试 Linux 内核
查看>>
介绍一个小工具:SSL-exporter
查看>>
深入理解 tc ebpf 的 direct-action (da) 模式(2020)
查看>>
为容器时代设计的高级 eBPF 内核特性(FOSDEM, 2021)
查看>>
Loki系列文章
查看>>
字节跳动面试官问:微服务下如何保证分布式事务的最终一致性?
查看>>
使用 Prometheus 监控 WireGuard
查看>>
BPF 可移植性和 CO-RE(一次编译,到处运行)
查看>>
万字长文:彻底搞懂容器镜像构建
查看>>
GitHub 又又又多了一个新主题 —— Dimmed Dark 主题!
查看>>
cgroup 挂载失败是什么鬼???
查看>>