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

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

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

服務器之家 - 編程語言 - Java教程 - 基于HTML5+js+Java實現(xiàn)單文件文件上傳到服務器功能

基于HTML5+js+Java實現(xiàn)單文件文件上傳到服務器功能

2020-12-18 14:21ML夜神 Java教程

應公司要求,在HTML5頁面上實現(xiàn)上傳文件到服務器功能,對于我這樣的菜鳥,真是把我難住了,最后還是請教大神搞定的,下面小編把例子分享到服務器之家平臺,供大家參考

上傳單文件到服務器                                                  

     應公司要求,在HTML5頁面上實現(xiàn)上傳文件到服務器,對于一個還沒畢業(yè)的實習生菜鳥來說,這可不得了-----不會,網(wǎng)上各種百度,找各種博客還是沒解決,最后還是請教了公司的大神,人家給卸了一個例子,然后根據(jù)人家寫的終于把這個上傳文件搞定。

  好了,開始上代碼。

HTML5代碼:

js" id="highlighter_133531">
?
1
2
3
4
5
6
<form name="upform" action="" method="POST"
          <input type ="file" name="myfile1" id="myfile1"/><br/> 
          <input type ="file" name="myfile2" id="myfile2"/><br/>
              備注:<input type="text" name="mydata" id="mydata"/><br/>
          <input type="button" value="確定" onclick="upload()"/><br/> 
</form>

js代碼:

FormData可以把它理解成一個虛擬的表單對象,它只有一個方法append,我們可以通過append向FormData里面添加各種需要提交的數(shù)據(jù)。

 url:/adata/adata/payment/PaymentAction/upload.menu----指的是你Java接受信息的action路徑

        _pathName=/adata//payment.jsp-----------指的是你HTML5頁面的虛擬路徑。

         alert(result);-------指的是從Java后臺返回的信息。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
function upload() {
 mydata = document.getElementById("mydata").files[0];
 formData = new FormData();
 formData.append("mydata", mydata);
  $.ajax({
       contentType:"multipart/form-data",
       url:"/adata/adata/payment/PaymentAction/upload.menu?_pathName=/adata//payment.jsp",
       type:"POST",
       data:formData,
       dataType:"text",
       processData: false, // 告訴jQuery不要去處理發(fā)送的數(shù)據(jù)
       contentType: false, // 告訴jQuery不要去設置Content-Type請求頭
       success: function(result){
       alert(result);
 }
 });
}

Java代碼:

?
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
String savePath = "d:/";//存儲路徑
      String retMsg = "";//定義將返回給客戶端的信息
      try {
        if (ServletFileUpload.isMultipartContent(request)) {
          List<FileItem> items = new ServletFileUpload(new DiskFileItemFactory()).parseRequest(request);
          for (FileItem item : items) {
            if (!item.isFormField()) {// 過濾掉表單中非文件域
              String fileType = item.getName().substring(item.getName().lastIndexOf(".") + 1).toLowerCase();//文件類型
              String fileName = new Date().getTime() + "." + fileType; //保存的文件名
              String filePath = savePath + "\\" + fileName; //保存的文件路徑
              BufferedInputStream in = new BufferedInputStream(item.getInputStream());// 獲得文件輸入流
              BufferedOutputStream out = new BufferedOutputStream(new FileOutputStream(new File(filePath)));// 獲得文件輸出流
              org.apache.commons.fileupload.util.Streams.copy(in, out, true);// 開始把文件寫到指定的上傳文件夾
              retMsg += "上傳文件成功!";
              in.close();
              out.close();
            
          }
        }
        response.setContentType("text/html;charset=utf8");
        PrintWriter pw = response.getWriter();
        pw.print(retMsg);
        pw.flush();
        pw.close();
        //根據(jù)自己需要返回頁面一個 retMsg
         // return retMsg 證明上傳成功
      } catch (Exception e) {
        e.printStackTrace();
      }

總結

以上所述是小編給大家介紹的基于HTML5+js+Java實現(xiàn)單文件文件上傳到服務器功能,希望對大家有所幫助,如果大家有任何疑問歡迎給我留言,小編會及時回復大家的!

原文鏈接:http://www.cnblogs.com/huangnn/archive/2017/08/19/7397245.html

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 久久婷婷五月综合色丁香 | 毛片免 | 免费国产成人 | 波多野结衣快播 | 99视频精品免费99在线 | 动漫美女3d被爆漫画 | 男女真实无遮挡xx00动态图软件 | 国产传媒在线播放 | 嫩草影院永久一二三入口 | 亚洲精品一区二区三区在线看 | 91久久碰国产| a级影视| 天堂在线中文无弹窗全文阅读 | 波多野结衣 在线 | 添逼逼视频 | 国产区香蕉精品系列在线观看不卡 | 射西西| 日本免费的一级绿象 | 国产愉拍精品视频手机 | 小早川怜子亚洲综合中文字幕 | 日韩一级片在线免费观看 | 日本偷拍xxxxxxww | www.91在线视频| 色综合图片 | 亚洲高清在线精品一区 | 涩涩成人 | 从后面撕开老师的丝袜动态图 | 亚洲精品色综合久久 | 天天做天天爽天天谢 | japanese日本护士 | 免费看全黄特黄毛片 | 国产麻豆流白浆在线观看 | 亚洲国产日韩制服在线观看 | 成人涩涩屋福利视频 | 国产成人yy精品1024在线 | 二次元美女内裤凹陷太深 | 皇上撞着太子妃的秘密小说 | 亚洲黄色小视频 | 亚洲波多野结衣日韩在线 | 人人爱天天做夜夜爽88 | 国产精品视频一区二区三区 |