書くのに約画像アップロードツール

1つの パッケージobj.controller。
2  インポートjava.io.Fileの。
3  輸入はjava.util.ArrayList;
4  インポートjava.util.Listに。
5  輸入java.util.UUID。
6  インポートするjavax.servlet.http.HttpServletRequest。
7  インポートorg.springframework.web.multipart.MultipartFile。
8  
9  パブリック クラスupload2 {
 10     パブリックリストの<string> uploadfile(HttpServletRequestのリクエスト、MultipartFile []ファイル){
 11        // 返回所有上传成功的图片路径集合
12        リストの<string>リスト=新しい新しいのArrayList <文字列> ();
 13は 
14枚の       // 画像保存されたパスは、サーバのTomcatのパスに格納されたファイルのアップロード
15        文字列関数savepath = request.getServletContext()getRealPath( "/ serverimgを。" );
 16        System.out.printlnは(関数savepath);
 17  // F:\ Eclipseの\ワークスペース\の.metadata \ .plugins \ org.eclipse.wst.server.core \ TMP1 \ wtpwebapps \ SpringMVC \ serverimg 
18である 
。19        ファイルファイル= 新しい新ファイル(関数savepath);
 20        // ディレクトリが存在しない場合は
21であり、       IF(!File.Exists()){
 22である          // ディレクトリの作成
23で          file.mkdirs();
 24        }
25  
26である       のIF(ファイル=!ヌル && files.length> 0 ){
 27           int型 I = 0;私はfiles.lengthを<;私は++ ){
 28              // アップロードされますファイル名
29              文字imgName = ファイル[I]。 getOriginalFilename();
 30              IF(!imgName = ヌル!&& imgName = "" ){
 31は                // アップロードされたファイルを得拡張子
32                 列fileExtName = imgname.substring(imgname.lastIndexOfを( "" ));
 33である                // セーブ文書はUUID生成された
34                 文字のファイル名を=makeFileName(fileExtName);
 35の                // 画像記憶された経路
36                 列filePathに=関数savepath + "/" + ファイル名;
 37 [  
38である                // 画像へのアクセスパス、直接データベースに入れることができるが、表示された画像パス
 39                 // 文字列basePathを= " HTTP: localhostの// 8080 "+ request.getContextPath()+" / serverimg / ";:
 40                 // ;文字列のパス= basePathを+" /「+ファイル名
 41                 // 、アップロード写真の名の後にデータベースに入れて、画像へのアクセスパスフロントデスクに自分のパスを記述する必要があります
42                 =文字列のパス名;
 43  
44                 ファイルSAVEDIR = 新しい新しいファイル(filePathに);
 45                 のIF(!saveDir.getParentFile())){(存在する。
 46                   )saveDir.getParentFile(mkdirs()。
47                 }
 48  
49                 // 转存文件
50                 のtry {
 51個の                  ファイル[I] .transferTo(SAVEDIR)。
52                 } キャッチ(例外e){
 53                   // TODO自動生成されたcatchブロック
54                   e.printStackTraceを()。
55                 }
 56                 list.add(パス)。
57              }
 58           }
 59        }
 60        リターン一覧;
 61である    }
 62がある 
63ことである    プライベート文字列makeFileName(文字列fileExtName){
 64        //は、一意のファイル名を生成するために、ファイルをアップロードするために、現象ファイルカバーを防ぐために
65        のリターン。()のtoString()(置換」UUID.randomUUIDに。 - ""「)+ fileExtName;
 66     }
 67  
68  }
 69  

フロントページを書きます

$(ドキュメント).ready(関数(){   
$( '.jtt')を得る(0).onchange =。機能(E){ 
       VAR = これを
       console.dir(この
       VaRの読み取り = 新しいFileReaderの(); 
       read.readAsDataURL(これは [0 .files ]); 
       ($(にconsole.log」.sh2 ')(0得る).SRC)
       read.onload = 関数(){ 
           $( ' .sh2' )(0を得ます。 ).SRC = この.result; 
       }   
       
       VAR FORMDATA = 新しいいるFormData($( "#フォーム")[0 ]); 

       
       $アヤックス({ 
          URL:'<%= Request.getContextPath()%> /バナー/ IMG' 
          タイプ: "POST" 
          データ:FORMDATA、
          データ型: "JSON" 
          PROCESSDATA:// 偽のjQueryを避けなければならないがFORMDATAにデフォルト設定されます処理 
          のcontentType:偽は// 自動的に右型コンテンツを追加します偽でなければならない 
          キャッシュ:// trueに、キャッシュが読み込まれます
          成功:機能(データ){ 
              はconsole.log(データ); 
            $ .each(データを、機能(I、OBJ){ 
                にconsole.log(OBJ)
                $(。 "#FORM")追加( 'の<input type = "text"の名= "バナー"値= " '+(OBJ)+"'>' ); 
            })
          } 
       })。
       
   } 
})

依存するJARパッケージ

<! - - JSPの依存は、として保存されます導入、またはJSPページを訪問しなければなりません> 
        <依存> 
            <groupIdを> org.apache.tomcat.embed </ groupIdを> 
            <たartifactId> Tomcatの-埋め込む-ジャスパー</たartifactId> 
            <スコープ>提供</スコープ> 
        </依存>

 

おすすめ

転載: www.cnblogs.com/yangfanfan/p/11574210.html