Java servlet - 使用stringbuffer导出到excel

时间:2014-05-23 04:31:44

标签: servlets stringbuffer

我是JAVA的新手。我试图通过结果集中的servlet导出Excel。

当我尝试在String缓冲区中存储数据时,它实际上并没有保存它。

Testfirst.java

String assingee_name = req.getParameter("firstName");
String track_name = req.getParameter("track");
String sla_id = req.getParameter("sla");
StringBuffer sb = new StringBuffer();

try {
    Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
    con = DriverManager.getConnection("jdbc:odbc:Databasethree");
    stmt = con.createStatement();

    //pw.println("'" +assingee_name + "'");
    length = track_name.length();

    if (length > 0) {
        rs = stmt.executeQuery("SELECT* FROM casedetails where track =" + "'" + track_name + "'");
    }

    length = sla_id.length();
    if (length > 0) {
        //rs = stmt.executeQuery("SELECT* FROM casedetails where case_age >"+"'" +sla_id + "'");
        rs = stmt.executeQuery("SELECT* FROM cdoscase where Incident_Submit_Fiscal_Year=" + "'" + sla_id + "'");
    }

    length = assingee_name.length();
    if (length > 0) {
        rs = stmt.executeQuery("SELECT* FROM casedetails where Assingee_name =" + "'" + assingee_name + "'");
    }
    pw.println("<html><body>");

    pw.println("<H1> CDOS Case Management Version 1.1 </H1>");

    pw.println("<Head><style>table,th,td{border:1px solid black;}</style></head>");
    pw.println("<table>");

    ResultSetMetaData rm = rs.getMetaData();
    int clm = rm.getColumnCount();
    StringBuffer sb1 = new StringBuffer();
    String sb2 = new String();

    for (int j = 1; j <= clm; j++) {
        sb2 = rm.getColumnName(j);
        pw.println("<th>");
        pw.println(sb2);
        pw.println("</th>");
    }

    ArrayList Rows = new ArrayList();
    ArrayList row = new ArrayList();
    Object a = new Object();
    int jj = 0;  // to find out the number rows 

    while (rs.next()) {
        jj = jj + 1;

        pw.println("<tr>");

        for (int i = 1; i <= clm; i++) {
            //data1[i]=rs.getString(i);
            pw.println("<td>");
            //pw.println(rs.getObject(i).toString());
            pw.println(rs.getString(i));
            pw.println("</td>");
            sb2.append(rs.getString(i);
            //row.add(rs.getString(i));
            //sb2=sb2+rs.getObject(i).toString();
        }

        pw.println("</tr>");

    } sb1.append("fd");
    //Rows.add(row);
    pw.println("Total Records found" + sb1);
    pw.println("</table>");

    //sb2=sb2+rs.getObject(clm).toString();
    //sb1.append(sb2);
    //sb1.append(sb2);
    a = rs.getString(4).toString();
    pw.println("this is data " + a);
    pw.println("<p>");
    pw.println("<td>Do you want to download report </td>");
    req.setAttribute("data", Rows);
    pw.println("<input type=\"submit\" name =\"submit1\" value=\"Export To Excel\">");
    pw.println("</form>");
} catch (SQLException e) {
    pw.println(e.getNextException());
} catch (ClassNotFoundException e) {
    pw.println(e.getException());
} finally {
    try {
        if (rs != null) {
            rs.close();

            rs = null;
        }
        if (stmt != null) {

            stmt.close();
            stmt = null;
        }
        if (con != null) {

            con.close();
            con = null;
        }
    } catch (Exception e) {
        pw.close();
    }
}

}

对此的任何帮助都非常感谢。

谢谢, SR

0 个答案:

没有答案