Я работаю над одним приложением, где я хочу скачать таблицу в формате .xls, Таблица загружается в формате .xls, но я должен дать имя столбца в состоянии while (rs.next ()), которое я не хочу, я хотите без указания имени столбца данные должны скачать базу на st.executeQuery (); там в любом случае? здесь я вставляю свой код
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%@page import="java.sql.*"%>
<!DOCTYPE html>
<html>
<head>
<title>JSP Page</title>
</head>
<body>
<form method="post" action="Download_excel.jsp">
<table border="1">
<tr>
<td>FILE_NAME</td>
<td>FILE_UPLOAD_DATE</td>
<td>POLICY_NO</td>
<td> ENDORSEMENT_NO</td>
<td> GP_EBAO</td>
<td> TOL_PRM</td>
<td> PRODUCT_NAME</td>
<td> POLICY_NUMBER</td>
<td> GP_OF</td>
<td>DIFF</td>
</tr>
<%
String txtfilename=request.getParameter("txtfilename");
String btnsubmit=request.getParameter("btnsubmit");
if(txtfilename==null ||txtfilename.trim().isEmpty())
{
out.println("<html><body><script type=\"text/javascript\">");
out.println("confirm('first name field cannot be blank');");
out.println("location='xlsUpload.html';");
out.println("</script></body></html>");
}
else
if(btnsubmit!=null)
{
response.setContentType("application/vnd.ms-excel");
response.setHeader("Content-Disposition", "attachment; filename="+txtfilename+".xls");
Class.forName("oracle.jdbc.driver.OracleDriver");
Connection con=DriverManager.getConnection("jdbc:oracle:thin:@172.18.115.213:1821:db","xe","se");
Statement st=con.createStatement();
ResultSet rs=st.executeQuery("select * from DYNAMIC_INSERT where file_name='"+txtfilename+"'");
while(rs.next())
{
%>
<tr>
<td><%=rs.getString("FILE_NAME")%></td>
<td><%=rs.getString("FILE_UPLOAD_DATE")%></td>
<td><%=rs.getString("POLICY_NO")%></td>
<td><%=rs.getString("ENDORSEMENT_NO")%></td>
<td><%=rs.getString("GP_EBAO")%></td>
<td><%=rs.getString("TOL_PRM")%></td>
<td><%=rs.getString("PRODUCT_NAME")%></td>
<td><%=rs.getString("POLICY_NUMBER")%></td>
<td><%=rs.getString("GP_OF")%></td>
<td><%=rs.getString("DIFF")%></td>
</tr>
<%
}
}
%>
</table>
</form>
</body>
</html>
Здесь я попробовал приведенный ниже код, но получить только имена столбцов, а не данные
ResultSetMetaData rsmd = rs.getMetaData();
int numOfCols = rsmd.getColumnCount();
for(int i = 1; i <= numOfCols; i++)
{
%>
<tr>
<td>
<%=rsmd.getColumnName(i))%>;
</td>
</tr>
<%
}
%>