我想通过存储在数据库表中的路径(本地服务器路径)下载文件,我已经完成了编码部分以查看html表中的数据库,但是我不知道如何对表进行超链接以便从服务器中存储的输出文件夹中下载文件(任何类型和大小)。这是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表。
如果rs.getString(“ file_path”)返回的路径为/home/Desktop/output/something.jpeg,则表示您无法下载。由于单击确定的链接时,肯定会显示PAGE NOT FOUND(404)异常。
“>单击此处下载文件
请注意您的网址看起来像
http:// localhost:8080 / prjname / home / Desktop / output / something.jpeg
因此,在这种情况下,我们可以将路径传递到一个servlet中,通过该servlet我们可以下载文件。