2004/01
Webサイトにダウンロード機能を持たすには?
1. 〜.zipのようなダウンロードファイルと解釈される拡張子のファイルに
リンクを張る。(そのリンクをクリックするとダウンロードダイアログが出る)
2. ダウンロード先のストリームに向かってデータを出力する。
(ダウンロードダイアログが出る)
の2つがあります。1.はJavaに関係ないので、今回は2.をやってみたいと
思います。意外と簡単に出来ます。逆にアップロードのが難しいです。
ではソースを見てみましょう!
package etc;
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
public class DownloadServlet extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("application/octet-stream");
response.setHeader("Content-Disposition"
, "attachment; filename=\"downloadFile.txt\"");
OutputStream out = response.getOutputStream();
byte[] downloadData = "やまろう".getBytes();
out.write(downloadData);
out.close();
}
}
APサーバに配備して、ブラウザでアクセスしましょう!
tomcatを使う場合、一番簡単なのは、
%TOMCAT_HOME%/webapps/examples/WEB-INF/classes/etc
にDownloadServlet.classをコピーして
http://localhost:8080/examples/servlet/etc.DownloadServlet
にブラウザでアクセスすると、ダウンロードダイアログが出てくるので
保存を押してファイル名入れて保存押すとファイルがダウンロードされます。
ファイルの中身は
やまろう
となってるはずです。
やまろう