依存関係を注入します
1 <プロパティ> 2 <project.build.sourceEncoding> UTF-8 </project.build.sourceEncoding> 3 <maven.compiler.source> 1.7 </maven.compiler.source> 4 <maven.compiler.target> 1.7 < /maven.compiler.target> 5 <spring.version> 4.3.24.RELEASE </spring.version> 6 </プロパティ> 7 8 <依存性> 9 <! -春- > 10 <依存性> 11 <のgroupId > org.springframework </ groupIdを> 12 <たartifactId>ばねコア</たartifactId> 13 <バージョン> $ {spring.version} </バージョン> 14 </依存> 15 <依存性> 16 <のgroupId> org.springframework </ groupIdを> 17 <たartifactId>ばねコンテキスト</たartifactId> 18 <バージョン> $ {spring.version} </バージョン> 19 </依存> 20 <依存性> 21 <のgroupId> org.springframework </ groupIdを> 22 <たartifactId>ばねウェブ</たartifactId> 23 <バージョン> $ {spring.version} </バージョン> 24 </依存> 25 <依存性> 26 <groupIdを> org.springframework </ groupIdを> 27 <たartifactId>ばねコンテキストサポート</たartifactId> 28 <バージョン> $ {spring.version} </バージョン> 29 </依存> 30 <依存性> 31 <のgroupId> org.springframework </ groupIdを> 32 <たartifactId>ばねwebmvc </たartifactId> 33 <バージョン> $ {spring.version} </バージョン> 34 </依存> 35 <依存性> 36 <のgroupId> org.springframework </ groupIdを> 37 <たartifactId>ばね試験</たartifactId> 38 <バージョン> $ {spring.version} </バージョン> 39 </依存関係> 40 <! - JSTL(JSP標準タグライブラリは、JSP標準タグライブラリ)はJSPタグのオープンソースの継続的な改善がある- > 41れる <依存> 42が <groupIdを>のjavax.servlet </ groupIdを> 43れる <たartifactId> JSTL </たartifactId> 44である <バージョン> 1.2 </版> 45 </依存> 46である <! -クラスおよびサーブレットを含む方法- > 47 <依存性> 48 <のgroupId>のjavax.servlet </ groupId> 49 <たartifactId>のjavax.servlet-API </たartifactId> 50 <バージョン> 3.0.1 </バージョン> 51 </依存> 52 <依存性> 53 <のgroupId> org.hibernate </ groupIdを> 54 <たartifactId>休止-バリ</たartifactId> 55 <バージョン> 5.2.4.Final </バージョン> 56 </依存> 57 58 <依存性> 59 < groupId> com.google.code.gson </ groupIdを> 60 <たartifactId> gson </たartifactId> 61 <バージョン> 2.8.5 </バージョン> 62 </依存> 63 <依存性> 64 <のgroupId> JUnitの</のgroupId > 65 <たartifactId> JUnitの</たartifactId> 66 <バージョン> 4.11 </バージョン> 67 <スコープ>テスト</範囲> 68 </依存> 69 70 <! -ジャクソン- > 71 <依存> 72 <groupIdを> com.fasterxml.jackson.core </ groupIdを> 73 <たartifactId>ジャクソンコア</たartifactId> 74 <バージョン> 2.9.3 </バージョン> 75 </依存> 76 <依存性> 77 <のgroupId> com.fasterxml.jackson.core </ groupIdを> 78 <たartifactId >ジャクソンの注釈< /たartifactId> 79 <バージョン> 2.9.3 </バージョン> 80 </依存> 81 <依存性> 82 <のgroupId> com.fasterxml.jackson.core </ groupIdを> 83 <たartifactId>ジャクソンデータバインド</たartifactId> 84 <バージョン> 2.9.3 </バージョン> 85 </依存> 86 87 <! -文件上传下载- > 88 <依存> 89 <groupIdを>コモンズ-IO </ groupIdを> 90 <たartifactId>コモンズ-IO </たartifactId> 91 <バージョン>> 2.4 </バージョン 92 < /依存関係> 93 <依存> 94 <のgroupId>コモン・ファイルアップロード</ groupIdを> 95 <たartifactId>コモン・ファイルアップロード</たartifactId> 96 <バージョン> 1.3 </バージョン> 97 </依存> 98 </依存関係>
XML設定
<! -多部分文件上传Mのキロバイトのバイト - > <豆ID = "multipartResolver" クラス = "org.springframework.web.multipart.commons.CommonsMultipartResolver"> <プロパティ名= "maxUploadSize"値= "104857600" / > <プロパティ名= "defaultEncoding"値= "UTF-8"> </ property>の </豆>
コアソース
1つの パッケージcom.etc.controller。 2 3 インポートorg.apache.commons.io.IOUtils。 4 インポートorg.springframework.stereotype.Controller。 5 輸入org.springframework.web.bind.annotation.RequestMapping。 6 インポートorg.springframework.web.bind.annotation.RequestParam。 7 インポートorg.springframework.web.multipart.MultipartFile。 8 9 インポートするjavax.servlet.http.HttpServletRequest。 10 インポートのjavax.servlet.http.HttpServletResponse。 11 インポートjava.io.Fileの。 12 インポートjava.io.FileInputStream; 13 輸入にjava.io.IOException。 14 15 @Controller 16の パブリック クラスFileController { 17 @RequestMapping( "/ upload.do" ) 18 公共の文字列アップロード(@RequestParam MultipartFile IMG、HttpServletRequestのリクエスト)がスローにIOException { 19 文字列DIR = request.getServletContextを()。getRealPath( "/アップロード」); 20 img.transferTo(新しいファイル(ディレクトリ+ "/" + img.getOriginalFilename())); 21 リターン「成功」。 22 } 23 24 @RequestMapping( "/ uploads.do" ) 25の 公共の文字列のアップロード(@RequestParam MultipartFile [] IMG、HttpServletRequestのリクエスト)がスローにIOException { 26 。文字列DIR = request.getServletContext()getRealPath( "/アップロード" )。 27 用(MultipartFile I:IMG){ 28 i.transferTo(新しいファイル(ディレクトリ+ "/" + i.getOriginalFilename())); 29 } 30 リターン「成功」。 31 } 32 33 @RequestMapping( "/ download.do" ) 34 getOutputStream())。40 リターン ヌル。 41 } 42 }