• 締切済み

JSPでサーバーにファイルのアップロード

JSPで掲示板を作成しているのですが CGIのような画像貼り付け掲示板を作成しようと思っています。 画像ファイルを決まったフォルダにアップロードしたいと思っているのですが javaがまだ初心者のためよくわからないのですが お教えいただけないでしょうか? よろしくお願います。

みんなの回答

  • ssr-y6
  • ベストアンサー率71% (5/7)
回答No.3

 以下は、strutsのMultipartIteratorクラスを使ったサーブレットとjsp(html)の一例です。 -----jsp(html)----- <%@ page contentType="text/html; charset=UTF-8" %> <html> <head><title>File Uploader</title></head> <body> <form action="http://localhost:8080/minnaservlet/89680" method="post" enctype="multipart/form-data"> File:<input type="file" name="file"><br> <input type="submit" value="Send FileData"> </form> </body> </html> -----サーブレット----- import java.io.*; import javax.servlet.*; import javax.servlet.http.*; import org.apache.struts.upload.*; public class fileupload extends HttpServlet { public void doPost(HttpServletRequest req, HttpServletResponse res) { int Int1; try { res.setContentType("text/html"); PrintWriter PW = res.getWriter(); PW.println("<html><head><title>Upload</title></head>"); MultipartIterator Ite = new MultipartIterator(req); MultipartElement Ele; FileOutputStream OutFile = new FileOutputStream(new File(getServletContext().getRealPath("/tmp89680"))); FileInputStream InFile; while ((Ele = Ite.getNextElement()) != null) if (Ele.isFile()) { InFile = new FileInputStream(Ele.getFile()); while((Int1 = InFile.read()) != -1) OutFile.write(Int1); InFile.close(); }; OutFile.close(); PW.println("<body><br>Upload Done</body>"); PW.println("</html>"); } catch (Exception ex) { System.out.println(ex.toString() + ":Post"); }; }; }

  • KaZtoYou
  • ベストアンサー率73% (11/15)
回答No.2

htmlでformタグのENCTYPE=multipart/form-dataを使ってinputタグのtype=FILEで参照したファイルのpostされたデータの取得方法に絞って説明すればいいのでしょうか?というかこれ以外思いつかない(苦笑) 以下に、サンプルがあるので参考にしてみては? #それ私もほしぃ。完成したら是非公開しましょう(^^)

参考URL:
http://home.eastmail.com/~yang/tips/fileUpload.html
  • arata
  • ベストアンサー率49% (139/279)
回答No.1

Srevletでの例になってしまうのですが、下記のURLの「Servlet でファイルのアップロードを行いたいのですが?」を参考にされてはいかがでしょうか?

参考URL:
http://www.gimlay.org/~andoh/hatena/java/javafaq.html#S125