用标签显示用户列表及Value Stack和Stack Context
2017-07-16 17:30
232 查看
用标签显示用户列表及Value Stack和Stack Context
以前我们显示用户列表,都是存在四个范围里(request,session,pageContext以及application),然后在jsp页面上写java代码和标签之类的,
这样看起来很不好!
如:
用标签
userlist.jsp
<%
UserDAO dao=new UserDAO();
ArrayList<User> list=dao.getUsers();
pageContext.setAttribute("list",list);
%>
<c:out ... />
jsp网页上,尽量不要出现Java代码
学了struts2.x之后,我们可以通过struts2.x的方式显示用户列表,步骤如下:
1.在struts中可以通过action去访问userlist.jsp
<result name="success">/WEB-INF/list/userlist.jsp</result>我们把uselist.jsp放在WEB-INF的list文件夹的目录下,是为了一定要经过action!
不然就显示不出用户的信息,因为用户的信息就是通过action类中的list()方法得到的!我们在前端就只要<a href="list"></a>即可,通过list查询
到struts.xml中找到<action name="*" class="myuser.UserAction" method="{1}">进入到action类中进行处理,然后转到前端userlist.jsp进行输出!
2.在action中将所有用户的信息存入到某个范围中,(struts2.x中的一种范围是:ActionContext)
ActionContext ctx = ActionContext.getContext();
ctx.put("USERLIST", list);///把用户的属性信息存放到ctx中
3.然后转向userlist.jsp,进行访问。
这里对userlist.jsp进行详细点的分析:
举个代码例子:
<table>
<tr><th>序号</th><th>用户名</th><th>密码</th></tr>
<s:iterator value="#USERLIST" status="s" id="cuser">
<tr><td><s:property value="#s.index+1"/></td><td><s:property value="#cuser.userName"/></td><td><s:property value="#cuser.pwd"/></td></tr>
</s:iterator>
</table>
</body>
<s:debug></s:debug>
首先讲:id是可以省略 ,省略之后 类似这样的<s:property value="#cuser.userName"/> 要变成<s:property value="userName"/>
在struts2.x框架标签中输出的时候:直接输出属性就可以了!如:<s:property value="userName"/>(<s:property/>输出标签)
第二:<s:iterator>标签是用来进行循环的
第三:这行代码:sttus="s" 和下面对应的 value="#s.index+1" 这些代码是用来增加序号的值的 index的值是从0开始的,我们要序号从1开始
所以index+1!
第四:<s:debug></s:debug>这个标签可以查看Value Stack 和Stack Context里面的东西(可以查看什么变量属于Value Stack还是Stack Context)
a.Value Stack 的概念 访问时不用加#
Value=值栈
b.Stack Context 访问时要加#
a和b都是用来存放数据
ognl表达式:类似于这种:#USERLIST (就是加上了"#"),功能比EL表达式要强!
struts2标签(可以去网上查查,里面有Struts2.x的标签,比较完整)
http://blog.163.com/hzd_love/blog/static/131999881201082111852520/
<s:iterator/>标签
http://www.blogjava.net/Reg/archive/2009/11/20/303085.html
以前我们显示用户列表,都是存在四个范围里(request,session,pageContext以及application),然后在jsp页面上写java代码和标签之类的,
这样看起来很不好!
如:
用标签
userlist.jsp
<%
UserDAO dao=new UserDAO();
ArrayList<User> list=dao.getUsers();
pageContext.setAttribute("list",list);
%>
<c:out ... />
jsp网页上,尽量不要出现Java代码
学了struts2.x之后,我们可以通过struts2.x的方式显示用户列表,步骤如下:
1.在struts中可以通过action去访问userlist.jsp
<result name="success">/WEB-INF/list/userlist.jsp</result>我们把uselist.jsp放在WEB-INF的list文件夹的目录下,是为了一定要经过action!
不然就显示不出用户的信息,因为用户的信息就是通过action类中的list()方法得到的!我们在前端就只要<a href="list"></a>即可,通过list查询
到struts.xml中找到<action name="*" class="myuser.UserAction" method="{1}">进入到action类中进行处理,然后转到前端userlist.jsp进行输出!
2.在action中将所有用户的信息存入到某个范围中,(struts2.x中的一种范围是:ActionContext)
ActionContext ctx = ActionContext.getContext();
ctx.put("USERLIST", list);///把用户的属性信息存放到ctx中
3.然后转向userlist.jsp,进行访问。
这里对userlist.jsp进行详细点的分析:
举个代码例子:
<table>
<tr><th>序号</th><th>用户名</th><th>密码</th></tr>
<s:iterator value="#USERLIST" status="s" id="cuser">
<tr><td><s:property value="#s.index+1"/></td><td><s:property value="#cuser.userName"/></td><td><s:property value="#cuser.pwd"/></td></tr>
</s:iterator>
</table>
</body>
<s:debug></s:debug>
首先讲:id是可以省略 ,省略之后 类似这样的<s:property value="#cuser.userName"/> 要变成<s:property value="userName"/>
在struts2.x框架标签中输出的时候:直接输出属性就可以了!如:<s:property value="userName"/>(<s:property/>输出标签)
第二:<s:iterator>标签是用来进行循环的
第三:这行代码:sttus="s" 和下面对应的 value="#s.index+1" 这些代码是用来增加序号的值的 index的值是从0开始的,我们要序号从1开始
所以index+1!
第四:<s:debug></s:debug>这个标签可以查看Value Stack 和Stack Context里面的东西(可以查看什么变量属于Value Stack还是Stack Context)
a.Value Stack 的概念 访问时不用加#
Value=值栈
b.Stack Context 访问时要加#
a和b都是用来存放数据
ognl表达式:类似于这种:#USERLIST (就是加上了"#"),功能比EL表达式要强!
struts2标签(可以去网上查查,里面有Struts2.x的标签,比较完整)
http://blog.163.com/hzd_love/blog/static/131999881201082111852520/
<s:iterator/>标签
http://www.blogjava.net/Reg/archive/2009/11/20/303085.html
相关文章推荐
- 通达OA-今日学习:无法显示在线人数、无法看到用户列表、无法弹出短信等
- 医药采购系统 用户查询列表实现Datagrid显示界面
- 通达OA-今日学习:无法显示在线人数、无法看到用户列表、无法弹出短信等
- struts2循环标签(将一个列表的内容在界面显示出来,自定义日期格式)
- 织梦list标签:解决重复显示文章列表
- PHP PDO MySql 分页显示用户列表index.php
- PHPCMS V9后台表单向导中让“信息列表"页面直接显示用户留言的信息列表
- stsadm 命令修改列表 "!新" 标签显示天数
- 详细讲解ExpandableListView显示和查询仿QQ分组列表用户信息
- java web从零单排第二十一期《Hibernate》主键的生成方式,用户增加与显示用户列表
- css中li标签之列表项标志显示
- 利用热门标签布局,实现单选列表(实现ViewGroup多行显示单选功能)
- 使用jsp自定义标签库实现数据列表显示模拟cms4j中的标签库效果
- 3.1 MonoForAndroid用户人机界面-更改与显示文字标签-TextView标签的使用
- 分页列表td中包含有<标签导致页面显示错乱问题,使用jstl <c:out>标签秒解决
- 用户在文本框中输入需要转换的十进制数,通过点击3个按钮在标签中显示结果。(点击一个实现一个)
- sql, 需求:用户购买次数达到限购次数的话,在用户查看商品列表的时候,不显示该商品
- 融云集成2--用户信息在会话列表和会话界面的显示
- 新浪微博(十九)显示用户微博列表(WeiBoListActivity类)
- jsp中用struts2标签删除用户列表中的用户