我想通过其路径(本地服务器路径)下载文件存储在数据库表中,我已经完成了编码部分来查看html表中的数据库,但我不知道如何超链接表以便从存储在服务器中的ouput文件夹下载文件(任何类型和大小)。 这是jsp代码:
<%@ page import="java.io.*,java.sql.*"%>
<%
String id=request.getParameter("id");
Class.forName("com.mysql.jdbc.Driver").newInstance();
Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306 /ksa","root","root");
Statement st=con.createStatement();
ResultSet rs=st.executeQuery("Select id,file_path,file_date from file12 where id like '"+id+"%'");
%>
<table cellpadding="15" border="1">
<%
while(rs.next()){
%>
<tr>
<td><%=rs.getString("id")%> </td>
<td><%=rs.getString("file_path")%> </td>
<td><%=rs.getString("file_date")%> </td>
</tr>
<%}%>
</table>
上面的代码将从数据库检索表到html表。
答案 0 :(得分:1)
<%@ page import="java.io.*,java.sql.*"%>
<%
String id=request.getParameter("id");
Class.forName("com.mysql.jdbc.Driver").newInstance();
Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/ksa","root","root");
Statement st=con.createStatement();
ResultSet rs=st.executeQuery("Select id,file_path,file_date from file12 where id like '"+id+"%'");
%>
<table cellpadding="15" border="1">
<%
while(rs.next()){
%>
<tr>
<td><a href="<%=rs.getString("file_path")%>"> click here to download the file with id :<%=rs.getString("id")%> </a> </td>
</tr>
<%}%>
</table>
答案 1 :(得分:1)
如果rs.getString(“file_path”)返回一个路径是/home/Desktop/output/something.jpeg意味着你无法下载。因为当你点击给定的链接时肯定会显示PAGE NOT FOUND(404)异常
“&gt;点击此处下载文件
请注意您的网址
http://localhost:8080/prjname/home/Desktop/output/something.jpeg
所以在这种情况下我们可以将路径传递到一个servlet,通过这个servlet我们可以下载文件。