java值栈_Struts2学习笔记-Value Stack(值栈)和OGNL表达式
只是本人的Struts2学习笔记,关于Value Stack(值栈)和OGNL表达式,把我知道的都说出来,希望对大家有用。
一,值栈的作用
记录处理当前请求的action的数据。
二,小例子
有两个action:Action1和Action2
Action1有两个属性:name和passwd
Action2有两个属性:name2和passwd2
请求从Action1进入,chain方法导向Action2
Struts.xml配置信息:
/p>
"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
"http://struts.apache.org/dtds/struts-2.3.dtd">
action2
/welcome.jsp
welcome.xml:
To change this template use File | Settings | File Templates.
--%>
name:
passwd:
locale:
三,访问
访问的路径:http://localhost:8080/Struts2OGNL/action1?name=nn&passwd=pp
Struts2OGNL是项目名称
下面是值栈截图:
注意到,我们连接中给了的值都已经出现在值栈中了,即name和passwd。还有我们发现这明显是一个栈,谁先调用谁在下面,当我们取值的时候,是从栈顶开始向下搜索,首先找到的那个值就是最终结果。
jsp中取值的方法:
name:
passwd:
locale:
根据名称取值,value是OGNL表达式,即对象图形导航语言,就是根据这个表达式找到一个对象。
如果一个对象的属性有一个类,例如User user,User有name和passwd属性,那么可以这样传参:
http://localhost:8080/Struts2OGNL/action1?user.name=nn&user.passwd=pp
并且可以这样取值:
name:
passwd:
locale:
当然,还可以直接用对象调用方法,例如下面的代码:
其余的用法,看下面这张图,就不一一总结了。这个图是视频中截下来的,以后有问题了来看看,查查,应该就会使用了。
Struts 的详细介绍:请点这里
Struts 的下载地址:请点这里
java值栈_Struts2学习笔记-Value Stack(值栈)和OGNL表达式相关推荐
- java 编程思想 多线程学习笔记
java 编程思想 多线程学习笔记 一.如何创建多线程? 1.继承 java.lang.Thread 类 2.实现 java.lang.Runnable 接口 3.Callable接口 总之,在任何线 ...
- JAVA基础与高级学习笔记
JAVA基础与高级学习笔记 /记录java基础与高级,除了较简单的内容,没有必要记录的没有记录外,其余的都记录了/ java初学者看这一篇就够了,全文 6万+ 字. JAVA基础 java会出现内存溢 ...
- Java 8 函数式编程学习笔记
Java 8 函数式编程学习笔记 @(JAVASE)[java8, 函数式编程, lambda] Java 8 函数式编程学习笔记 参考内容 Java 8中重要的函数接口 扩展函数接口 常用的流操作 ...
- 【Java】函数式编程学习笔记——Stream流
学习视频:https://www.bilibili.com/video/BV1Gh41187uR?p=1 (1)[Java]函数式编程学习笔记--Lambda表达式 (2)[Java]函数式编程学习笔 ...
- 【小猫爪】AUTOSAR学习笔记10-Communication Stack之CanTsyn模块
[小猫爪]AUTOSAR学习笔记10-Communication Stack之CanTsyn模块 前言 1 时间同步的引入 2 时间同步的角色 3 时间同步过程 3.1 四种报文 3.2 时间同步过程 ...
- 【小猫爪】AUTOSAR学习笔记02-Communication Stack简介
[小猫爪]AUTOSAR学习笔记02-Communication Stack简介 前言 1 简介 2 CAN消息的传播路径 2.1 Com服务 2.2 Dcm服务 2.3 SM服务和NM服务 3 补充 ...
- 【小猫爪】AUTOSAR学习笔记06-Communication Stack之ComM模块
[小猫爪]AUTOSAR学习笔记06-Communication Stack之ComM模块 前言 1 ComM简介 2 ComM功能介绍 2.1 PNC 状态管理 2.2 Channel状态管理 2. ...
- 【小猫爪】AUTOSAR学习笔记16-Memory Stack之Nvm模块
[小猫爪]AUTOSAR学习笔记16-Memory Stack之Nvm模块 前言 1 Memory Stack结构 2 NvM模块 2.1 Block 2.2 数据结构 2.3 Redundant B ...
- Java并发编程艺术学习笔记(五)
Java并发编程艺术学习笔记(五) Java并发容器和框架 Java为开发者也提供了许多开发容器和框架,可以从每节的原理分析来学习其中精妙的并发程序. 一.ConcurrentHashMap的实现原理 ...
最新文章
- reporting Server組件不全引起的致命錯誤
- 手机如何看python代码_python如何绘制iPhone手机图案?(代码示例)
- putty ubuntu服务器 上传文件,教你如何使用PuTTY上传文件?
- 正则化方法:防止过拟合,提高泛化能力
- python(matplotlib5)——Contours 等高线图
- spring自定义标签实现
- 零基础:邪恶带你3步快速掌握iSCSI搭建
- Kudu :主键冲突 status=Already present: key already present
- 树莓派linux i2c通信,树莓派与i2c设备的通信
- MySQL03:DML语言
- GET和POST请求是一个字典
- ecshop怎样在新主页模板里调用首页主广告
- 在java中产生随机数_在Java中产生随机数的两个方法
- CentOS 配置网络yum源
- 模拟百度搜索框,输入时显示历史记录
- 【爬虫】python爬取微信公众号
- 汉语词性对照表[北大标准/中科院标准]
- python 文件操作OS总结
- 沈理工大学计算机设计专业,沈理工学子在全国大学生计算机设计竞赛中喜获佳绩...
- 如何从零基础入门并精通PS?PS如何快速入门?
热门文章
- html-网页基本标签
- 既有 HTTP ,为啥用 RPC 进行服务调用?
- python numpy sum函数,numpy.sum()的使用详解
- rubymine 保存成unix格式_如何免费在线试用 200+ Linux 和 Unix 发行版?
- git status查看文件的状态
- C语言 __TIME__ - C语言零基础入门教程
- shellcraft新姿势
- php $app-run(),Thinkphp 5.x 应用启动 App::run()
- 娄底八中的初中计算机考试,众人同心勤耕耘 敢叫日月换新天
- 如何备份数据_如何通过归档、备份和灾难恢复实现多云数据保护