0

ダウンロードプログラムを作成するためにサーブレットを使用しています。

enter code here package com.lara;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class HelloWorld extends HttpServlet
 {
  public void doGet(HttpServletRequest request, HttpServletResponse response)
  throws ServletException,IOException
   {

 // new code -- start
   String filename = request.getParameter("ojdbc");
    filename = filename + ".jar";
    response.setHeader("Content-Disposition","attachment;filename=\"" + filename +        "\"");


   ServletContext ct = getServletContext();
 InputStream in = ct.getResourceAsStream("/bookCode.jar");
 int read=0;
   byte[] bytes = new byte[1024];
  OutputStream os = response.getOutputStream();
  while((read=in.read(bytes))!=-1)
  {
   os.write(bytes,0,read);
  }
 os.flush();
   os.close();
 }
}

// html..soでアンカータブを使用したいので、それをクリックすると、ファイルと同じ名前を取得できます。私の場合はnullになりますが、他の方法を使用すると機能します...要するにコードが必要です。アンカーリンクを介したjar名誰かが私を助けることができます。

4

1 に答える 1

0

これはうまくいくかもしれません...追加してみてください:

response.setContentType("application/x-download"); 
于 2013-03-20T12:39:17.073 に答える