1. <ul id="0c1fb"></ul>

      <noscript id="0c1fb"><video id="0c1fb"></video></noscript>
      <noscript id="0c1fb"><listing id="0c1fb"><thead id="0c1fb"></thead></listing></noscript>

      99热在线精品一区二区三区_国产伦精品一区二区三区女破破_亚洲一区二区三区无码_精品国产欧美日韩另类一区

      RELATEED CONSULTING
      相關咨詢
      選擇下列產(chǎn)品馬上在線溝通
      服務時間:8:30-17:00
      你可能遇到了下面的問題
      關閉右側工具欄

      新聞中心

      這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
      struts2文件上傳采用的三種方式分別是什么

      本篇文章給大家分享的是有關struts2文件上傳采用的三種方式分別是什么,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。

      在白山等地區(qū),都構建了全面的區(qū)域性戰(zhàn)略布局,加強發(fā)展的系統(tǒng)性、市場前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務理念,為客戶提供成都網(wǎng)站制作、成都網(wǎng)站設計 網(wǎng)站設計制作按需搭建網(wǎng)站,公司網(wǎng)站建設,企業(yè)網(wǎng)站建設,高端網(wǎng)站設計,營銷型網(wǎng)站,外貿營銷網(wǎng)站建設,白山網(wǎng)站建設費用合理。

      文件上傳幾乎是每個項目實現(xiàn)的一個必須的模塊。

      上傳就是將信息從個人計算機(本地計算機)傳遞到中央計算機(遠程計算機)系統(tǒng)上,讓網(wǎng)絡上的人都能看到。將制作好的網(wǎng)頁、文字、圖片等發(fā)布到互聯(lián)網(wǎng)上去,以便讓其他人瀏覽、欣賞。這一過程稱為上傳。

      JAVA實現(xiàn)文件上傳的幾個組件:

      1 SmartUpload 用的最多的一個組件,已經(jīng)不再更新了,可以實現(xiàn)上傳和下載

      2 FileUpload Apache實現(xiàn)的文件上傳組件,功能齊備

      3 J2KUpload java2000實現(xiàn)的文件上傳組件,全部使用內存,適合多個不超過10M的小文件

      下面具體說說FileUpload Apache實現(xiàn)的文件上傳組件。

      1、/** 按copy方式上傳 */

      Java代碼

      public String uploadFile(){         /**保存的具體路徑*/        String savepath = getSavePath();         /**根據(jù)保存的路徑創(chuàng)建file對象*/        File file = new File(savepath);         if(!file.exists()){             /**創(chuàng)建此文件對象路徑*/            file.mkdirs();         }         try {             /**使用的是:org.apache.commons.io.FileUtils FileUtils*/            FileUtils.copyFile(pic, new File(file,getPicFileName()));         } catch (IOException e) {             e.printStackTrace();         }         return SUCCESS;     }

      備注:

      1、getSavePath()方法中,ServletActionContext().getServletContext().getRealPath

      (savePath+"\\"+getPicFileName()); ,這個主要是一個文件的實際路徑

      2、我個人認為這種方式是簡單易用的。按copy方式上傳使用的是Apache公司的

      org.apache.commons.io.FileUtils包里的FileUtils.java。

      2、/** 按字節(jié)方式上傳 */

      Java代碼

      public String uploadFile(){              /** 文件的寫操作 */          FileInputStream fis = null;          FileOutputStream fos = null;             /** 保存的路徑 */        String savepath = getSavePath();         /** 根據(jù)保存的路徑創(chuàng)建file對象 */        File file = new File(savepath);         /** file對象是否存在   */        if (!file.exists()) {             /** 創(chuàng)建此文件對象路徑  */            file.mkdirs();         }         try {             /** 創(chuàng)建輸入流 */            fis = new FileInputStream(pic);             /** 輸出流 更據(jù)文件的路徑+文件名稱創(chuàng)建文件對象 */            fos = new FileOutputStream(file + "http://" + getPicFileName());             /** 讀取字節(jié)   */            byte b[] = new byte[1024];             int n = 0;             /** 讀取操作   */            while ((n = fis.read(b)) != -1) {                 /** 寫操作   */                fos.write(b, 0, n);             }             /** 關閉操作  */            if (fis != null) {                 fis.close();             }             if (fos != null) {                 fos.close();             }         } catch (Exception e) {             e.printStackTrace();         }         return SUCCESS;     }

      3、/** 按字符方式上傳 即“三層管道” */

      Java代碼

      public String uploadFile(){         /** 文件的寫操作 */        BufferedReader br =null;         BufferedWriter bw = null;            /** 保存的路徑 */        String savepath = getSavePath();         /** 根據(jù)保存的路徑創(chuàng)建file對象   */        File file = new File(savepath);         /** file對象是否存在  */        if (!file.exists()) {                        /** 創(chuàng)建此文件對象路徑  */            file.mkdirs();         }         try {             /**   創(chuàng)建一個BufferedReader  對象*/            br = new BufferedReader(new InputStreamReader(new FileInputStream         (pic)));                         bw = new BufferedWriter(new OutputStreamWriter(new FileOutputStream         (file + "http://" + getPicFileName())));                              // 讀取字節(jié)             char b[] = new char[1024];             int n = 0;             // 讀取操作             while ((n = br.read(b)) != -1) {                 // 寫操作                 bw.write(b, 0, n);             }             // 關閉操作             if (br != null) {                 br.close();             }             if (bw != null) {                 bw.close();             }         } catch (Exception e) {             e.printStackTrace();         }         return SUCCESS;     }

      備注:

      第二種上傳方式?jīng)]有第三種上傳方式效率高。

      建議:

      首先用第一種方式上傳,次之使用第三種方式上傳,最后再使用第二種方式上傳。

      以上就是struts2文件上傳采用的三種方式分別是什么,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注創(chuàng)新互聯(lián)行業(yè)資訊頻道。


      分享題目:struts2文件上傳采用的三種方式分別是什么
      本文來源:http://www.ef60e0e.cn/article/gjgpje.html
      99热在线精品一区二区三区_国产伦精品一区二区三区女破破_亚洲一区二区三区无码_精品国产欧美日韩另类一区
      1. <ul id="0c1fb"></ul>

        <noscript id="0c1fb"><video id="0c1fb"></video></noscript>
        <noscript id="0c1fb"><listing id="0c1fb"><thead id="0c1fb"></thead></listing></noscript>

        贡嘎县| 怀来县| 成都市| 独山县| 灌阳县| 罗江县| 遂溪县| 云南省| 泰安市| 灌南县| 新营市| 合肥市| 密云县| 富阳市| 瓮安县| 田阳县| 洛隆县| 确山县| 沾益县| 克什克腾旗| 镇雄县| 平山县| 恩施市| 永顺县| 景东| 讷河市| 富民县| 开化县| 巴林左旗| 沙坪坝区| 荃湾区| 钟山县| 富锦市| 如皋市| 来宾市| 吉隆县| 万山特区| 枣阳市| 弥勒县| 庄河市| 沙田区|