SpringMVCベースのファイルのアップロード


#### 1.プロジェクト作成

`cn.tedu.spring`、`アーティファクトId`がSRPINGMVC-03-UPLOAD` as` `war`を選択し、` `ようにMaven Project`、`グループId`を作成するための Packaging`を。

必要なSpringMVC依存性を追加することに加えて、あなたは`コモンズ・fileupload`の依存関係を追加する必要があります。

    <依存性> 
        <のgroupId>コモン・ファイルアップロード</のgroupId> 
        <たartifactId>コモン・ファイルアップロード</たartifactId> 
        <バージョン> 1.4 </バージョン> 
    </依存>

 

#### 2.静的ページ

`index.html` in` webapp`プロジェクト、ページの要件作成:

1.フォーム` <フォーム>は``プロパティをmethod`がPOST`をbe`しなければならない、アップロードされたファイル理由データ要求パラメータの平均量に対して、データが非常に大きい場合、URLは`属enctype`値の値は、マルチパート/フォームdata`をbe`必要があり、また、適合しません。

  <フォームアクション= "" METHOD = "POST" のenctype = "マルチパート/フォームデータ">

 

2.フォームには、ファイルを移動するためのコントロールを持っている必要があります。

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


たとえば、完全なコード:

    <フォームアクション= ""メソッド、= "POST"にenctype = "multipart / form-データ"> 
        <P-は>アップロードするファイルを選択してください:</ p型> 
        <p型> <種類のINPUT = "ファイル" /> </ P> 
        <P> <INPUTタイプ= "送信"値= "アップロード" /> </ P> 
    </フォーム>

アップロード要求####受信3.

最初のチェックは`ばねmvc.xml`に関する成分は、ルートパッケージの構成をスキャンし、次いでController` @`アノテーションを追加すること、cn.tedu.spring.UploadController`コントローラクラスをcreate` 、その後、処理要求コントローラクラスのメソッドに追加します。

    ( "upload.do"を@RequestMapping パブリック)(文字列アップロード{
         戻り ヌル
    }

リクエストを処理する方法では、リクエストを処理している間に、取得したクライアントオブジェクトファイルのパッケージによってアップロードされた `MultipartFile`型パラメータを、追加、無効transferTo(ファイル)ファイルを保存するために`メソッドobject`パラメータを呼び出します:

    @Controller
     パブリック クラスUploadController { 
    
        @RequestMapping( "upload.do" 公共の文字列のアップロード(
            @RequestParam( "ファイル")MultipartFileファイル)スローはIllegalStateExceptionは、IOException {
             // 执行保存 
            =ファイルのDEST 新しい / 1:ファイル( "dが。 JPG」); 
            file.transferTo(DEST)。
            リターン ヌル
        } 
        
    }

 

`形式の静的なページのAction`プロパティの値が`ファイルを閲覧するには、コントロールのNAME`プロパティ値がfile`をbe`しなければならない、upload.do`をbe`必要があります。

最後に、使用`MultipartFile`前に、あなたはまた、`春-mvc.xml`中でCommonsMultipartResolver`をconfigure`する必要があります。

    <! -使用する必要MultipartResolverアップロード設定- > 
    <上記のid = "MultipartResolver"言及したBeanをクラス = "org.springframework.web.multipart.commons.CommonsMultipartResolver" />を
        

 

おすすめ

転載: www.cnblogs.com/cgy-home/p/11094836.html