SpringMvc JSONファイルのアップロードと処理

ファイルをアップロード

ポンポン依存

 

<依存> 
      <groupIdを>コモンズ-ファイルアップロード</ groupIdを> 
      <たartifactId>コモンズ-ファイルアップロード</たartifactId> 
      <バージョン> 1.33 </バージョン> 
</依存関係>

 

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 
  時間:1957 
  に変更するには、このテンプレートを使用するファイルを| 設定| ファイルのテンプレート。
- %> 
<%@ページの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を(" 要求例外" ); 

    } 
}

 

おすすめ

転載: www.cnblogs.com/chenjiahao9527/p/11614170.html