将ResultSet中的数据封装为实体对象放到List中,然后将此List放到request的attribuite中,在jsp中就可通过标签输出数据

解决方案 »

  1.   

    最简单、常用的就是用HashMap->List来存放返回数据
    当然了,用一些其他的封装类也不错,比如javax.sql.RowSet
      

  2.   

    现在我们做的都是像 yz_ming(JavaMan)所说的一样,先取出放到一个封装对像中 然后传到JSP
      

  3.   

    我一般是用楼上的方法 HashMap - List - ResultSet
      

  4.   

    用servlet 形成xml 格式
    再用js 或xsl形成界面
      

  5.   

    result关闭之后就得不到了,所以我常用ArrayList中
      

  6.   

    把每一行数据封装到DTO(有人喜欢叫Value Object,BO, POJO, Entity等等,其实都差不多)对象,然后放到集合类比如List, Map之类的传输到业务层或者表现层
      

  7.   

    自己封装一个对象,在把 对象放到,,Collection里....传到  JSP.....
      

  8.   

    用servlet 形成xml 格式
             再用js 或xsl形成界面好!!!!
      

  9.   

    根据数据生成一个javabean,然后把这个bean的实例放到Collection中,再传递到jsp
      

  10.   

    把每一条记录放到VECTOR里,然后再把所有的记录(VECTOR)放到ArrayList中,传到页面,在页面用
    Iterator迭带一个就可以了
      

  11.   

    晕!我都是放在数组里返回到jsp的!
      

  12.   

    做一个相应的数据类,然后把这个对象放到LinkedList中,在JSP中调用LinkedListLinkedList lkAllData= new LinkedList();
    expBean dataBean=null;while(rs.next())
    {
      dataBean= new expBean();
      dataBean.setName(rs.getString(1));
      dataBean.setAddress(rs.getString(2));
      if(dataBean!=null)
        lkAllData.add(dataBean);
    }
     return lkAllData;
    ////献丑了:>
      
      

  13.   

    以上的方法本人都不赞同,
    我觉得应该自己写一个标签。比如为 display.java
    然后将起定义为标签,
    对于你每次要显示的内容,其实你只要传递关键字,比如:sql 语句。就可以了!
    然后在你的页面中利用自定义的标签:比如为:  <app:display>  就可以实现了!以下是本人写的一个很简单的标签,在struts中!                        displayTag.java
    -----------------------------------------------------------------
    import javax.servlet.jsp.tagext.TagSupport;
    import java.io.IOException;
    import javax.servlet.jsp.PageContext;
    import javax.servlet.jsp.JspWriter;
    import javax.servlet.jsp.JspException;
    import javax.servlet.http.HttpSession;
    import java.sql.*;public final class DisplayTag  extends TagSupport {
      public int doEndTag()throws JspException{
        UserDao userdao=new UserDao();
        JspWriter out=pageContext.getOut();
        HttpSession session=pageContext.getSession();
        try{
          String name="name";
          String password="password";
          String strSql=(String)session.getAttribute("strSql");
          ResultSet rs=userdao.disPlay(strSql);      out.println("<table border=1>");
          out.println("<tr>");
          out.println("<th width=100>"+name+"</th>");
          out.println("<th width=100>"+password+"</th>");
          out.println("</tr>");
          while(rs.next()){
            out.println("<tr>");
            out.println("<td>"+rs.getString(name)+"</td>" );
            out.println("<td>"+rs.getString(password)+"</td>" );
            out.println("</tr>");
          }
          out.println("</table>");
        }
        catch(Exception e){}
        return super.doEndTag();
      }}
                              app.tld
    --------------------------------------------------------------------
    <?xml version="1.0" encoding="ISO-8859-1" ?>
    <!DOCTYPE taglib
      PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.2//EN"
      "http://java.sun.com/dtd/web-jsptaglibrary_1_2.dtd">
    <taglib>
      <tlib-version>1.0</tlib-version>
      <jsp-version>1.2</jsp-version>
      <short-name>Application Tag Library</short-name>
      <tag>
        <name>display</name>
        <tag-class>netregister.DisplayTag</tag-class>
        <body-content>empty</body-content>
      </tag>
    </taglib>
                                           web.xml
    ---------------------------------------------------------------
    添加以下内容:
      <taglib>
        <taglib-uri>/WEB-INF/app.tld</taglib-uri>
        <taglib-location>/WEB-INF/app.tld</taglib-location>
      </taglib>
                                    displayAction.do
    ------------------------------------------------------------------
        String strSql=new String("select * from yonghu");
        HttpSession session=httpServletRequest.getSession();
        session.setAttribute("strSql",strSql) ;
        return actionMapping.findForward("success") ;如果不是用的struts,可以通过其他方法,实现这步!
                               display.jsp
    -----------------------------------------------------------------
    <%@ page contentType="text/html; charset=GBK" %>
    <%@ taglib uri="/WEB-INF/app.tld" prefix="app" %>
    <html>
    <head>
    <title>
    display
    </title>
    </head>
    <body bgcolor="#ffffff">
    <app:display />
    </body>
    </html>  这样,在你的每一个jsp中,只要想输出查询结果,就只需要调用  <app:display/>
    就可以了!
    以上代码不一定完全正确,但是思想就是这样!
    而且在大的项目中,非常推崇!
    它体现了java 代码重用的思想,而且也使结果集的相关操作不直接暴露与用户,也实现了安全!
    供参考!
      

  14.   

    zeq258(近朱者赤) 的很实用
      

  15.   

    简单一点的就是把数据集先存入哈希表中,然后再存入矢量中,传给jsp页面再遍历就可以了。
      

  16.   

    将ResultSet中的数据封装为实体对象放到List中,然后将此List放到request的attribuite中,在jsp中就可通过标签输出数据