一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - servlet下載文件實現代碼詳解(五)

servlet下載文件實現代碼詳解(五)

2021-01-14 15:46柳暗花明睡一覺 Java教程

這篇文章主要為大家詳細介紹了servlet下載文件的實現代碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實例為大家分享了servlet下載文件的具體代碼,供大家參考,具體內容如下

1.servlet下載文件

  servlet下載文件就是將服務器端的文件傳輸到客戶端。

2案例

下載文件servlet類

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
package com.learn;
 
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
 
/**
 * Created by Administrator on 2017/09/24.
 */
public class DownLoadServlet extends HttpServlet {
  private String filePath;
 
  @Override
  public void init(ServletConfig config) throws ServletException {
    super.init(config);
    filePath = config.getInitParameter("filePath");
    //初始化路徑
    //filePath = config.getServletContext().getRealPath(filePath);
    System.out.println("初始化文件路徑:"+filePath);
  }
 
  @Override
  protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
    doPost(req,resp);
 
  }
 
  @Override
  protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
 
    OutputStream out; //輸出流
    InputStream in; //輸入流
 
    String fileName = req.getParameter("fileName");
    System.out.println("文件名稱:"+fileName);
    //如果把文件名為null則提示用戶
    if(fileName == null){
      out = resp.getOutputStream();
      out.write("please input fileName".getBytes());
      out.close();
    }
    //獲取文件流
    in = getServletContext().getResourceAsStream(filePath+ File.separator+fileName);
    System.out.println(in==null?true:false);
    int length = in.available();
    
    //設置返回消息頭部信息
    resp.setContentType("application/force-download");
    resp.setHeader("Content-Length",String.valueOf(length));
    resp.setHeader("content-disposition","attachment;filename=\""+fileName+"\"");
    //輸出文件到客戶端
    out = resp.getOutputStream();
    int bytesend = 0 ;
    byte[] buff = new byte[512];
    while ((bytesend = in.read(buff))!= -1){
      out.write(buff,0,bytesend);
    }
    in.close();
    out.close();
  }
}

web.xml配置

?
1
2
3
4
5
6
7
8
9
10
11
12
<servlet>
 <servlet-name>download</servlet-name>
 <servlet-class>com.learn.DownLoadServlet</servlet-class>
 <init-param>
   <param-name>filePath</param-name>
   <param-value>file</param-value>
 </init-param>
</servlet>
<servlet-mapping>
 <servlet-name>download</servlet-name>
 <url-pattern>/download</url-pattern>
</servlet-mapping>
 

原文鏈接:http://www.cnblogs.com/wwyx-xi/p/7588503.html

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 无限在线看免费视频大全 | 俺去俺来也在线www色官网 | www.福利| 美女大逼逼 | 美艳教师刘艳第三部166 | 成人男女啪啪免费观看网站 | 九九热视频 这里有精品 | 精品国产中文字幕在线视频 | 日本videossexx日本人 | 逼逼日| 高清一级做a爱免费视 | 亚洲国产成人在人网站天堂 | 免费毛片在线观看 | 我和岳偷长篇小说 | 乌克兰18sex性hd | 欧美日韩一品道 | 欧美日韩一区二区综合 | 草逼视频网址 | 精品一区二区三区高清免费观看 | 国产自产2023最新麻豆 | 99热精品久久 | 免费一级毛片在线播放放视频 | 欧美爽妇 | 免费国产高清视频 | 侵犯小男生免费视频网站 | 99草精品视频 | 日本精品人妖shemale人妖 | 欧美交换乱理伦片120秒 | 欧美大美bbb和大白屁股 | 亚洲精品久久久久久婷婷 | 手机看片国产免费现在观看 | 欧美香蕉人人人人人人爱 | 久久强奷乱码老熟女 | 久久精品WWW人人爽人人 | 国产码一区二区三区 | 四虎在线精品观看免费 | 日韩欧美亚洲每日更新网 | 色女的乖男人 | 亚洲成av人片天堂网 | 吃瓜视频在线观看 | 日本三级在丈面前被耍了 |