把<bean:write name="user" property="UserName"></bean:write> 改为:<bean:write name="user"></bean:write> 你的bean中根本就没有UserName属性,当然显示不出来了。

解决方案 »

  1.   

    还有,你的java代码干什么先把rst.getString("UserName")放入HashMap然后再把HashMap放入ArrayList,这不是多此一举嘛。直接改为:arraylist.add(rs.getString("UserName"));
      

  2.   

    <table>
    <logic:iterate id="user" name="Test">
    <tr><td>AAAA
    <bean:write name="user"></bean:write>
    </td></tr>
    </logic:iterate>
    </table>改成上面的,看看能不能看见AAAA和你的内容,如果能看见就把AAAA去掉。我的信誉是因为俺倒分,被斑竹封了,后来接分就给俺5分。
      

  3.   

    能看见的,显示的个数和我的数据库里UserName条数一样的
      

  4.   

    注意:你的HashMap中的key是ID
     hm.put("id",rst.getString("UserName"));
    所以输出应该是
    <bean:write   name="user"   property="id"></bean:write>
      

  5.   

    楼上的,不要乱说。bean:write中的property是指bean的属性!!!!
      

  6.   

    to:imA(男的不会,会的不男)
    其注意bean:write是在logic:iterator中,请你多看看书
      

  7.   

    比如我有个类Test
    class Test
    {
    private String name;
    public String getName()
    {
    return name;
    }
    public void setName(String name)
    {
    this.name=name;
    }
    }
    而我在action中是这样写的:
    java.util.List list=new java.util.ArrayList();
    for(int i=0;i<10;i++)
    {
    Test test=new Test();
    test.setName(i+":name");
    list.add(test);
    }
    request.setAttribute("list",list);
    在jsp中这样写:
    <table>
    <logic:iterate id="test" name="list"> 
    <tr><td><bean:write name="test" property="name"/></td></tr>
    </logic:iterate>
    明白了property的含义了吧?
      

  8.   

    to:imA(男的不会,会的不男)
    请你看好下面那段,请看好HashMap的定义
    while(rst.next()){
         hm   =   new   HashMap();
         hm.put("id",rst.getString("UserName"));
         arraylist.add(hm); 
    }
      

  9.   

    楼上的正解。看来我原来一直理解有错误。因为一直没那么用过(list中放map)
      

  10.   

    还是写个实体bean比较直观,hashmap如果东西多了人容易犯糊涂