使用JSP下载文件

1 java jsp servlets

我目前正在尝试使用JSP来构建一些小型的litle应用程序,并且没有陷入困境,从Web服务器下载文件.我似乎无法弄清楚我应该怎么做这个任务.

这里是否有任何JSP开发人员知道如何解决这个问题,并指出我的方向是正确的?

Bal*_*usC 6

如果资源是静态的,只需将其放在公共webcontent(JSP/HTML/CSS/JS/etc文件也在那里),并在JSP中包含指向它的链接.

<a href="file.ext">download</a>
Run Code Online (Sandbox Code Playgroud)

servletcontainer将担心设置正确的HTTP响应头.

如果资源是动态的,创建用于获得本一个servlet InputStream的内容的某种方式(new FileInputStream,resultSet.getBinaryStream(),etc..etc ..),并将其写入到OutputStream至少沿着所述响应的Content-TypeContent-Disposition响应标头.最后,只需链接到JSP中的servlet即可.

<a href="fileservlet/file.ext">download</a>
Run Code Online (Sandbox Code Playgroud)

您可以在本文中找到一个基本示例.

Content-Type这样它就知道应该使用什么应用程序打开它头通知有关内容类型的文件的客户端.该Content-Disposition头通知客户端做什么用的呢,内联显示它或者保存为附件.