码迷,mamicode.com
首页 > 其他好文 > 详细

初学者易上手的SSH-struts2 04值栈与ognl表达式

时间:2017-10-15 18:00:51      阅读:157      评论:0      收藏:0      [点我收藏+]

标签:request   初学者   strong   nbsp   结果   setattr   存储机制   app   取值   

什么是值栈?struts2里面本身提供的一种存储机制,类似于域对象,值栈,可以存值和取值.,特点:先进后出。如果将它当做一个容器的话,而这个容器有两个元素,那么最上面的元素叫做栈顶元素,也就是所说的压栈。

action和servlet区别:每次访问的action的时候,都会创建一个新的action对象,而servlet只会创建一个对象。每次访问action都会创建一个action对象,action对象里面都且只有一个值栈的对象。

我们可以使用 <s:debug></s:debug>标签来查看值栈的结构以及存于值栈中的值。值栈的结构分为:root,结果是list集合,context,结果是map集合。那么怎么使用s标签?在页面上导入s标签库就可以使用了,<%@ taglib uri="/struts-tags" prefix="s"%>,就想c标签库一样。

那么首先我们来获取值栈对象,里面存入值。

技术分享

获取值栈对象值:

技术分享

 

存入变量值:

技术分享

获取变量值:

<s:property value="name" />

存入对象值:

技术分享

获取对象值:

<s:property value="users.name" />
<s:property value="users.pwd" />

 

存入对象集合

技术分享

获取对象集合的值:

技术分享

存入

// 域对象
HttpServletRequest request = ServletActionContext.getRequest();
request.setAttribute("hun", "gggg的你大爷");

获取域对象值,在域对象中取值要加#

<s:property value="#request.hun" />

如果一个s标签的文本框要附上值栈的值,那么要如下写法:<s:textfield value="%{name}"></s:textfield>。

关于s标签我就不过多介绍了。附图一张

技术分享

 

初学者易上手的SSH-struts2 04值栈与ognl表达式

标签:request   初学者   strong   nbsp   结果   setattr   存储机制   app   取值   

原文地址:http://www.cnblogs.com/lzx2509254166/p/7671150.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!