SpringMVCのアップロードとダウンロード

ファイルのアップロード

       概要:文書のほとんどは、ファイルのアップロード機能を実現するために、そのため、バックエンドサーバのフォームに送信されたフォームからアップロードされている、あなたはファイルアップロードフォームを提供する必要がありますが、形式は次の3つの条件が必要です。

       図1に示すように、フォームのmethod属性はポストを形成するように設定されています

       2、フォームマルチパート/フォームデータへのenctypeプロパティ・シート

       3、提供の<input type = "ファイル" 名= "ファイル名" />の入力ボックスのファイルのアップロード

       サンプルコード:

              <FORM ACTION = "后台路径" METHOD = "POST" のenctype = "マルチパート/フォームデータ" METHOD = "POST">

                     <input type = "ファイル" 名= "FILENAME" />

                     <入力タイプは、= "提出" 値= "提交" />

              </フォーム>

      

SpringMVC での2本のJARパッケージのアップロードを提供します:

              コモンズ・ファイルアップロード-1.3.2.jar

              コモンズ-io.2.5.jar

 

       サンプルコード:

      

 

       JSPのコード:

 

設定ファイルに次のコードを追加します。

 

コントローラは、コードを記述します。

@RequestMapping( "/ファイルアップロード")

       公共の文字列handlerFormUpload(@RequestParam( "名前")文字列名、

                     @RequestParam( "uploadfile")一覧<MultipartFile> uploadfile、

                     HttpServletRequestのリクエスト){

 

              //アップロードされたファイルが存在するかどうかを判断します

              (もし!uploadfile.isEmpty()&& uploadfile.size()> 0){

                     //ループ出力ファイルのアップロード

                     {(uploadfile MultipartFileファイル)のための

                            //アップロードされたファイルの元の名前を取得します

                            ストリングyuanshiFileName = file.getOriginalFilename()。

                            //アップロードされたファイルを保存するアドレスディレクトリを設定

                            ストリングdriPath = request.getServletContext()。getRealPath(

                                          "/アップロード/");

                            ファイルfilePathには、新しいFile(driPath)を=。

                            //ファイルを保存するアドレスが存在しない場合は、ディレクトリを作成します

                            (もし!filePath.exists()){

                                   filePath.mkdirs();

                            }

                            //アップロードされたUUIDの名前を変更するファイル名を使用します

                            文字列newFilename =名+ "_" + UUID.randomUUID()+ "_"

                                          + YuanshiFileName;

                            {試します

                                   file.transferTo(新しいファイル(driPath + newFilename));

                            }キャッチ(例外e){

                                   // TODO自動生成されたcatchブロック

                                   e.printStackTrace();

                                   「エラー」を返します。

                            }

                     }

                     「成功」を返します。

              } そうしないと {

                     「エラー」を返します。

              }

 

       }

 

ダウンロード

 

 

公開された40元の記事 ウォン称賛7 ビュー10000 +

おすすめ

転載: blog.csdn.net/sj_1993/article/details/105351047