ファイルをアップロード
ポンポン依存
<依存> <groupIdを>コモンズ-ファイルアップロード</ groupIdを> <たartifactId>コモンズ-ファイルアップロード</たartifactId> <バージョン> 1.3。3 </バージョン> </依存関係>
springmvc.xml
<豆上記のid = 「MultipartResolver 」 クラス = 「org.springframework.web.multipart.commons.CommonsMultipartResolver 」 > <! -とコンテンツの正しい形式解決するために、JSP pageEncodingは契約を表示しなければなりませんユーザー- > <プロパティ名を= " defaultEncoding "値= " UTF-8。" > </プロパティ> <! -ファイルの最大サイズ(バイト)1024 * 1024 * 50 = 50M - > <プロパティ名= " maxUploadSize "値= " 52428800 " > </プロパティ> <!--resolveLazilyプロパティは異常取り込むために、ファイルの解析、ファイルのサイズを遅らせるために有効になっています - > <プロパティ名= 「resolveLazily 」値= 「trueに」 /> </豆>
jspページ
<% - のIntelliJ IDEAによって作成されます。 ユーザー:デル 日:2019年 / 9 / 29 時間:19:57 に変更するには、このテンプレートを使用するファイルを| 設定| ファイルのテンプレート。 - %> <%@ページのcontentType = " text / htmlの;のcharset = UTF-8 "言語= " javaの"%> <HTML> <HEAD> <TITLE>上传图片</ TITLE> </ HEAD> <BODY> <FORM ACTION = " $ {pageContext.request.contextPath} /アップロード" METHOD = "ENCTYPE = " マルチパート/フォームデータ" > の<input type = " ファイル" NAME = " XXX " > の<input type = " 提出"値= " 上传" > </ FORM> </ BODY> </ HTML>
コード
(@RequestMapping " /アップロード" ) @ResponseBody 公共の文字列のアップロード(HttpServletRequestのリクエスト、MultipartFile xxxのを){ しようと{ FileUtils.copyInputStreamToFile(xxx.getInputStream()、新(ファイルを" ://一時/ E " + xxx.getOriginalFilename() )); } キャッチ(IOExceptionを電子){ e.printStackTrace(); } 戻り " 上传成功" 。 }
あなたは、マッピングファイルを設定するには、このイメージにアクセスする場合:
結果:
JSON返却処理:
要求する前にこのメソッドを追加@ResponseBody
@ResponseBody @RequestMapping(" / jsonStr2 " ) 公共の地図jsonStr2(){ 返す bookService.listPager(新しいブック()、新しい PageBeanを())。取得(0 ); }
結果
処理ツールのJSONを返します
;パッケージcom.cjh.util パブリック クラス化するJsonResult { // トラフィック状態に応じて プライベート整数ステータス; // 応答メッセージ プライベート文字列MSG; // データ応答 プライベートオブジェクトデータ; プライベート文字列のOKが; // 使用していない 公共の 静的を構築するするJsonResult (ステータス整数、文字列MSG、データオブジェクト){ 戻り 新しい新しい化するJsonResult(ステータス、MSG、データ); } パブリック 静的{(データオブジェクト)化するJsonResult OK を返す 新しい新;(データ)化するJsonResultを } 公共の 静的化するJsonResult OK(){ 返す 新しい化するJsonResult(ヌル)。 } パブリック 静的化するJsonResult errorMsg内容(文字列MSG){ 戻り 新しい化するJsonResult(500、MSG、ヌル)。 } パブリック 静的化するJsonResult errorMap(オブジェクトデータ){ 戻り 新しい化するJsonResult(501、" エラー" 、データ)。 } パブリック 静的化するJsonResult errorTokenMsg(文字列MSG){ 戻り 新しい化するJsonResultを(502、MSG、ヌル); } パブリック 静的化するJsonResult errorException(文字列MSG){ 戻り 新しい化するJsonResult(555、MSG、ヌル)。 } パブリック化するJsonResult(){ } 公共化するJsonResult(整数ステータス、文字列MSG、オブジェクトデータ){ この .status = ステータス。 この .MSG = MSG; この .DATA = データ。 } 公共化するJsonResult(オブジェクトデータ){ この .status = 200 。 この .MSG =「OK 」。 この .DATA = データ。 } パブリックブールISOK(){ 戻り 、この .statusの== 200 。 } パブリック整数のgetStatus(){ リターン・ステータス、 } 公共 ボイドのsetStatus(整数ステータス){ この .status = ステータス。 } パブリック文字列GETMSG(){ 戻りMSG。 } 公共 ボイドsetMsg(文字列MSG){ この .MSG = MSG。 } パブリックオブジェクトのgetData(){ 戻りデータ; } 公共 ボイドのsetData(オブジェクトデータ){ この .DATA = データ。 } パブリック文字列getOk(){ 戻りOK。 } 公共 ボイドsetOk(OK文字列){ この .ok = OK。 } }
テスト
@ResponseBody @RequestMapping(" / jsonStr3 " ) 公共化するJsonResult jsonStr3(){ 戻り(JSONResult.okを" ここでデータ・オブジェクトである" ); } @ResponseBody (@RequestMapping " / jsonStr4 " ) 公共化するJsonResult jsonStr4(){ 戻り JSONResult.errorMsgを(" 要求例外" ); } }