新建一个class,
将systemid,systemname作为他的两个属性不就可以迭代了!

解决方案 »

  1.   


    小妹刚学java,麻烦你们把代码写出来好么?拜托了
      

  2.   

    class bean{
       String systemid;
       String systemname ;
       
       bean(String id,string name){
          this.systemid = id;
          this.systemname = name;
       }   //systemid and systemname's getter and setter method here...
       .......
    }
      

  3.   

    对用上面的这个类
    package wjhstruts;
    class Bean {
    private String systemid;
    private String systemname;........//setter and getter;}
    然后
    public List querydata()                
      {
        try
        {
           List l=new ArrayList();         
           ResultSet result=con_statement().executeQuery("select systemid,systemname from Tsystem");
          while(result.next()) {
               Bean b=new Bean();
               b.setSystemid(result.getString(1));
               b.setSystemname(result.getString(2));
               l.add(b);
          }
           return l;
        }
        catch(Exception e)
        {
          return null;
         }
      }
    jsp里面
    <%@page contentType="text/html;charset=gb2312"%>
    <%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic" %>
    <%@ taglib uri="/WEB-INF/struts-template.tld" prefix="template" %>
    <%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %>
    <%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>
    <jsp:useBean id="db" class="wjhstruts.Jsp4Bean" scope="page"/>
    <%pageContext.setAttribute("result",db.querydata());%>
    <html>
    <head></head>
    <body>
    <center>
          <hr>迭代的使用:<br/>
          <table align="center" bgcolor="#008800" border="0" cellspacing="2" cellpadding="5">
             <tr bgcolor="#cccccc"><td><b>系统id</b></td><td><b>系统名称</b></td></tr>
             <logic:iterate id="sysName" name="result">
                <tr bgcolor="#cccccc"><td><bean:write name="sysName" property="systemid"/></td>
    <td><bean:write name="sysName" property="systemName"/></td></tr>
             </logic:iterate>
         </table></center>
    </body>
    </html>
      

  4.   

    to:jFresH_MaN大哥
    javabean这样对么
    ---------------
    package wjhstruts;
    import java.sql.*;
    import java.util.List;
    import java.util.ArrayList;class wjhsystem
    {
    public String systemid;
    public String systemname;public void setsystemid(String id)
    {
      this.systemid = id;
    }
    public void setsystemname(String name)
    {
      this.systemname = name;
    }
    public String getsystemid()
    {
      return this.systemid;
    }
    public String getsystemname()
    {
      return this.systemname;
    }
    }
    public class Jsp4Bean {
      public Connection Pcon;
      public Statement Pstatement;
      
      public Statement con_statement()throws Exception                //连接
      {
        try
        {
           Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();
           Pcon = java.sql.DriverManager.getConnection("jdbc:microsoft:sqlserver://wjh:1433;DatabaseName=wjh", "sa", "");
           Pstatement = Pcon.createStatement();
          return Pstatement;
        }
        catch(Exception e)
        {
           e.printStackTrace();
           return null;
        }
      }
      public List querydata()                //查询
      {
        try
        {
          List l=new ArrayList();
          ResultSet result=con_statement().executeQuery("select systemid,systemname from Tsystem");
          while(result.next()) 
          {
              wjhsystem b=new wjhsystem();
              b.setsystemid(result.getString("systemid"));
              b.setsystemname(result.getString("systemname"));
              l.add(b);
          }
          Pcon.close();
          result.close();
          return l;
        }
        catch(Exception e)
        {
          return null;
        }
      }
    }
    --------------------------------------------------------------
    但报错哦!
    javax.servlet.ServletException: wjhstruts/wjhsystem
     at org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:471)
     at org.apache.jsp.jsp1$jsp._jspService(jsp1$jsp.java:216)
     ...
      

  5.   

    首先你必须把地一个类和第二个类分在两个文件里面,不然jsp轧面就访问不到了
    还有你的wjhsystem类里面的getter和setter方法定义不对
    必须注意大写;修改成这样的:
    setSystemid
    getSystemid
    然后最好把systemid和systembname设成private,这个符合规范
      

  6.   


    终于行了!
    太感谢你了,jFresH_MaN大哥!!!!!
    以后小妹有什么问题,可以请教你么?
      

  7.   


    还请教一个问题,
    如果只有一个字段,怎么把迭代出来的这个值,填充到下拉列表筐里呀?
    即<select name="operator">  </select>
      

  8.   

    还是一样的啊
    <html:select name"oprator>
    <logic:iterate id="sysName" name="result">
    <html:option><bean:write name="sysName" property="systemid"/></html:option>
    <html:option><bean:write name="sysName" property="systemname"/></html:option>
    </logic:iterate>
      

  9.   

    jFresH_MaN大哥
    我改为:
         <html:select name="oprator">
        <logic:iterate id="sysName" name="result">
        <html:option><bean:write name="sysName" property="systemname"/></html:option>
        </logic:iterate>
        </html:select>
    但报错:"jsp1.jsp": According to the TLD attribute property is mandatory for tag select at line 25, column 6
      

  10.   

    jFresH_MaN大哥,最后一次麻烦你了
      

  11.   


    就是<select property="xxx"不能少
      

  12.   

    我改为:
    <html:form action="/wjh.do" method="get">
        <html:select property="systemname1">
        <logic:iterate id="sysName" name="uSession">
        <html:option><bean:write name="sysName" property="systemname"/></html:option>//此出错
        </logic:iterate>
        </html:select>
    </html:form>    
    错误信息:"jsp1.jsp": According to the TLD attribute value is mandatory for tag option at line 27, column 5