我有一个上传文件的 java web 服务
我想在本地保存文件 - 我成功了
并提供一个 url 以便稍后在网页中显示文件(图像)
但是,我不能返回“C:/path/to/saved/file.jpg”
如何将我的文件路径转换为可在 localhost:8080/webappname/ 寻址的网页中显示的 url?
我有一个上传文件的 java web 服务
我想在本地保存文件 - 我成功了
并提供一个 url 以便稍后在网页中显示文件(图像)
但是,我不能返回“C:/path/to/saved/file.jpg”
如何将我的文件路径转换为可在 localhost:8080/webappname/ 寻址的网页中显示的 url?
好的,下面的代码显示了一个简单的 JSP 来完成这项工作。但请记住,这应该仅用于尝试该方法。您应该在 Servlet 而不是 JSP 中执行此操作:
<%@ page import="java.net.*"%>
<%@ page import="java.io.*"%>
<%@ page import="java.lang.String"%>
<%@ page import="java.net.*"%>
<%@ page import="java.lang.Object"%>
<html>
<body>
<%
response.setContentType("image/jpeg");
response.setHeader("Content-Disposition","attachment; filename=stuff" + ".jpg");
URL url = new URL("http://www.google.com/images/logos/ps_logo2.png");
URLConnection connection = url.openConnection();
InputStream stream = connection.getInputStream();
BufferedOutputStream outs = new BufferedOutputStream(response.getOutputStream());
int len;
byte[] buf = new byte[1024];
while ((len = stream.read(buf)) > 0)
{
outs.write(buf, 0, len);
}
outs.close();
%>
</body>
</html>
看,方法是直接将内容写入页面,当然要正确配置标题。
问候