Struts2学习记录-Value Stack(值栈)和OGNL表达式
2018-03-29 13:04
351 查看
仅仅是学习记录。把我知道的都说出来
一。值栈的作用
记录处理当前请求的action的数据。二,小样例
有两个action:Action1和Action2Action1有两个属性:name和passwd
Action2有两个属性:name2和passwd2
请求从Action1进入。chain方法导向Action2
Struts.xml配置信息:
<? xml version="1.0" encoding="UTF-8"? > <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN" "http://struts.apache.org/dtds/struts-2.3.dtd"> <struts> <package name="default" namespace="/" extends="struts-default"> <action name="action1" class="com.geekgao.action.Action1"> <result type="chain"> <param name="actionName">action2</param> </result> </action> <action name="action2" class="com.geekgao.action.Action2"> <result> /welcome.jsp </result> </action> </package> </struts>
welcome.xml:
<%@ taglib prefix="s" uri="/struts-tags" %> <%-- To change this template use File | Settings | File Templates. --%> <%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head> <title></title> </head> <body> name:<s:property value="name"/><br> passwd:<s:property value="passwd"/><br> locale:<s:property value="locale"/> <s:debug></s:debug> </body> </html>
三,訪问
訪问的路径:http://localhost:8080/Struts2OGNL/action1?name=nn&passwd=pp
Struts2OGNL是项目名称
以下是值栈截图:
注意到,我们连接中给了的值都已经出如今值栈中了,即name和passwd。还有我们发现这明显是一个栈,谁先调用谁在以下,当我们取值的时候,是从栈顶開始向下搜索,首先找到的那个值就是终于结果。
jsp中取值的方法:
name:<s:property value="name"/><br> passwd:<s:property value="passwd"/><br> locale:<s:property value="locale"/>
依据名称取值,value是OGNL表达式,即对象图形导航语言,就是依据这个表达式找到一个对象。
假设一个对象的属性有一个类,比如User user。User有name和passwd属性,那么能够这样传參:
http://localhost:8080/Struts2OGNL/action1?
user.name=nn&user.passwd=pp
而且能够这样取值:
name:<s:property value="user.name"/><br> passwd:<s:property value="user. passwd"/><br> locale:<s:property value="locale"/>
当然,还能够直接用对象调用方法。比如以下的代码:
<s:property value="user.toString()"/>
其余的使用方法,看以下这张图,就不一一总结了。这个图是视频中截下来的,以后有问题了来看看,查查,应该就会使用了。
相关文章推荐
- Struts2学习记录-Value Stack(值栈)和OGNL表达式
- Struts2学习记录2(ValueStack(值栈)和ognl)
- Struts2学习总结(3)--值栈,Ognl表达式,Struts标签库,国际化,数据校验,拦截器
- Struts2学习总结(3)--值栈,Ognl表达式,Struts标签库,国际化,数据校验,拦截器
- Struts2学习——(六)值栈与OGNL表达式[结合struts标签]
- Struts2深入学习:OGNL表达式原理
- JAVAEE学习——struts2_03:OGNL表达式、OGNL与Struts2的结合和练习:客户列表
- Struts2深入学习----OGNL表达式原理
- Struts2之OGNL表达式与值栈对象及常用标签的使用
- struts2的ognl表达式学习心得
- struts2(四) ognl表达式、值栈、actionContext之间的关系
- struts2的ognl表达式学习心得
- struts2_Action、拦截器、值栈、OGNL表达式、ModelDriven实现方案
- 关于Struts2中的值栈与OGNL表达式
- struts2基础学习五之OGNL表达式
- Struts2学习(第十一篇)——OGNL表达式的基本语法和用法
- Struts2之 OGNL表达式和值栈
- Struts2深入学习:OGNL表达式原理
- Struts2深入学习:OGNL表达式原理
- Struts2深入学习:OGNL表达式原理