JavaのSpring MVCのファイルアップロードの

次のようにディレクトリ構造は次のとおりです。

 

通常、そのmvc.xmlを重視、SRC内の設定ファイルは、次の設定ファイルを言うことに注意してください。web.xmlの場合は、ただのweb.xmlを言います

1.ファイルアップロードのご注意

投稿フォームが提出しなければならない、のenctypeが "multipart / form-data" に設定する必要があり、

文書のコモンズ - ファイルアップロードの提出を使って、あなたはコモンズ・ファイルアップロード及びコモンズ-IOのjarパッケージを追加する必要があります。

2.Jspページ

<フォームアクション= "ファイル/ upload.do"メソッド= " ポスト "のenctype =" マルチパート/フォームデータ "> 
文件:の<input type ="ファイル" NAME = "ファイル" />の<input type = "提出"値= "上传" /> 
</ FORM> 
</ BODY>

3.Controllerクラス

@Controller
 // 窄化
@RequestMapping( "/ファイル" パブリック クラスUploadController {
    @RequestMapping( "/upload.do" パブリック文字列アップロード(@RequestParam( "ファイル")CommonsMultipartFileファイル、HttpServletRequestのREQ)をスロー例外{ 
        文字列のパス = req.getServletContext()getRealPath( "/アップロード"。 )。
        // 获取文件名 
        文字列fileNameに= file.getOriginalFilename()。
        入力ストリームは、 = )(file.getInputStream。
        OutputStreamのOS = 新しいのFileOutputStream(新しいファイル(パス、ファイル名));
        バイト []バッファ= 新しい バイト [400 ]。
        int型のlen = 0 ;
        一方、((LEN = is.read(バッファ))= - 1] ){ 
            os.write(バッファ、 0 、LEN)。
        } 
        にos.close()。
        近くにあります(); 
        戻る:「/index.jspをリダイレクトします」
    } 
}

4.設定ファイルを追加しますmultipartResolver

<! - 文件上传配置 - > 
    <豆ID = "multipartResolver" クラス = "org.springframework.web.multipart.commons.CommonsMultipartResolver"> 
        <プロパティ名= "maxUploadSize"値= "1000000" /> 
    </豆>
        

 

 付録:

附属書I、添付ファイルの内容はmvc.xml

<?xml version = "1.0"エンコード= "UTF-8"?> 
<豆のxmlns = "http://www.springframework.org/schema/beans" 
    のxmlns:XSI = "http://www.w3.org / 2001 / XMLスキーマ・インスタンス" 
    のxmlns:P = "http://www.springframework.org/schema/p" 
    のxmlns:コンテキスト = "http://www.springframework.org/schema/context" 
    XSI:のschemaLocation = "
         http:// www.springframework.org/schema/beans 
        ます。http:// www.springframework.org/schema/beans/spring-beans.xsd 
        ます。http:// www.springframework.org/schema/context 
        のhttp:// WWW .springframework。ORG /スキーマ/コンテキスト/春-context.xsd ">
    <! -開発アダプタ注釈- > 
    <豆のクラス = "org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter" /> 
    <! -リゾルバ設定ビュー- > 
    <豆ID = "viewResolver" クラス = "org.springframework.web.servlet.view.UrlBasedViewResolver"> 
        <プロパティ名= "viewClass"値= "org.springframework.web.servlet.view.JstlView" /> 
           <! -応答でビューの名前プラス接頭辞- > 
        <プロパティ名= "接頭辞"値= "/ WEB-INF / JSP /" /> 
        <! -ビュー名サフィックスへの応答- > 
        。<プロパティ名= "サフィックス"値= " JSP「/> 
    </豆> 
    <! -ファイルアップロードの設定- >
    <ビーンID = "multipartResolver" クラス
        
        = "org.springframework.web.multipart.commons.CommonsMultipartResolver"> 
        <プロパティ名= "maxUploadSize"値= "1000000" /> 
    </豆> 
    <! -扫描注解类- > 
    <コンテキスト:コンポーネント・スキャンベース- パッケージ = "cn.sxt.controller" /> 
</豆>

 

 ここでは、その後のweb.xmlファイルのWebContentの内容を添付/ WEB-INF /下

<?xml version = "1.0"エンコード= "UTF-8"?> 
の<web-appののxmlns:XSI = "http://www.w3.org/2001/XMLSchema-instance"のxmlns = "のhttp:// javaのsun.comの/ XML / NS / JavaEEの"XSI:のschemaLocation =" http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0 .xsd」ID = "WebApp_ID"バージョン= "3.0"> 
  <表示名> 01springmvc_helloworld </表示名> 
  <サーブレット> 
      の<servlet-name>のspringmvc </サーブレット名> 
      <servlet- クラス > org.springframework。 web.servlet.DispatcherServlet </ servlet- クラス > 
      <! -改变springmvc配置文件的路径及名称- > 
      の<init-param>の
          の<param-name>のcontextConfigLocation </ PARAM名> 
          の<param-value>のクラスパス:mvc.xml </ PARAM値> 
      </ initの-param>の
  </サーブレット>
  <のservlet-mapping> 
      の<servlet-name>のspringmvc </サーブレット名> 
      の<url-pattern> *。やる </のurl-pattern> 
  </のservlet-mapping> 
  <歓迎-ファイル・リスト> 
    <歓迎-ファイル> index.htmlを</歓迎ファイル> 
    <歓迎-ファイル>のindex.htm </歓迎ファイル> 
    <歓迎-file> index.jspの</歓迎ファイル> 
    <歓迎-ファイル> デフォルトの.html </歓迎ファイル> 
    <歓迎-ファイル> デフォルトの.htm </歓迎ファイル> 
    <歓迎-ファイル> デフォルトの.jsp </歓迎ファイル> 
  </歓迎ファイル・リスト> 
</ web-app>の

 

おすすめ

転載: www.cnblogs.com/Vincent-yuan/p/11278749.html