(转) Struts2 中s:iterator 标签的用法

 最近自己在研究SSH的整合使用,由于进入公司后一直使用的都是EJB,所以SSH基本上用不到,然而SSH又是主流的一个框架模式,所以花了几天的时间把SSH整合案例做了出来,今天就来的写一下 Struts2 中 s:iterator 标签的使用。

s:iterator 标签 一般都是用来抓取List中的内容,而List中一般都是存放的一些dto,下面是一个简单的实例,

dto: package com.bsn.po;

import java.util.List;

public class Group {

    private String id;
    private String name;
    private List users;
   
    public String getId() {
        return id;
    }
    public void setId(String id) {
        this.id = id;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public List getUsers() {
        return users;
    }
    public void setUsers(List users) {
        this.users = users;
    }
}

public class User{

    private String id;
    private String name;

   public String getId() {
        return id;
    }
    public void setId(String id) {
        this.id = id;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }

}

实例一:servlet 1 中相关代码:

List list = new ArrayList();

Group g = new Group();

g.setId("g1");

g.setName("gn1");

list.add(g);

g = new Group();

g.setId("g2");

g.setName("gn2");

list.add(g);

request.getSession ().setAttribute("GROUPLIST ",list); //这里是放在Session中 也可以直接放request中

JSP 代码:

<%@ taglib prefix="s" uri="/struts-tags"%>

......

<table>

    <tr width="400">

         <td height="25">

                   ID

         </td>

         <td>

                  NAME

         </td>

      </tr>

   <s:iterator value="#session .GROUPLIST " status="stuts"> // session 和上面的session对应

      <tr>

         <td>

                   <s:property value="id" />

         </td>

         <td>

                   <s:property value="name" />

         </td>

      </tr>

   </s:iterator>

</table>

最后显示:

ID     NAME

g1    gn1

g2    gn2

实例1 效果就是将Session中的GROUPLIST中的所有的数据放入TABLE中,注意:此时Group中 只存放了id 和 name, 没有存放list, 如果我把list中存放若干个User实例呢,怎么在iterator中再去iterator呢? 很简单,看实例2.

实例二: servlet 代码:

List list = new ArrayList();

Group g = new Group();

g.setId("g1");

g.setName("gn1");

List l = new ArrayList();

User u = new User();

u.setId("u1");

u.setName("un1");

l.add(u);

u = new User();

u.setId("u2");

u.setName("un2");

l.add(u);

g.setUsers(l);

list.add(g);

g = new Group();

g.setId("g2");

g.setName("gn2");

l = new ArrayList();

u = new User();

u.setId("u3");

u.setName("un3");

l.add(u);

u = new User();

u.setId("u4");

u.setName("un4");

l.add(u);

g.setUsers(l);

list.add(g);

request.getSession ().setAttribute("GROUPLIST ",list); //这里是放在Session中 也可以直接放request中

JSP 代码:

<%@ taglib prefix="s" uri="/struts-tags"%>

......

<table>

    <tr width="400">

         <td height="25">

                   ID

         </td>

         <td>

                  NAME

         </td>

          <td>

                  USERS

         </td>

      </tr>

   <s:iterator value="#session .GROUPLIST " status="stuts"> // session 和上面的session对应

      <tr>

         <td height="25">

                   <s:property value="id " />//id是Group的一个类变量

         </td>

         <td height="25">

                   <s:property value="name " />//name是Group的一个类变量

         </td>

         <td>

               <table>

                   <s:iterator value="users "> //users 是Group的一个类变量

                  <tr>

                        <td>

                          [ <s:property value="id " /> ] [ <s:property value="name " />]// id name是User的类变量

                         </td>

                    </s:iterator>

               </table>

         </td>

      </tr>

   </s:iterator>

</table>

最后显示:

ID     NAME    USERS

g1    gn1      [u1] [un1]

                    [u2] [un2]

g2    gn2      [u3] [un3]

                    [u4] [un4]

OK, 就到这里,基本上很简单,可是我在网上找了好久都没找到 iterator 中 还要 iterator 的代码


本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/chinasystems/archive/2009/09/22/4580705.aspx

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值