배경을 업로드의 MultipartFile 파일 전송 아약스 + botton을 + 숨겨진 파일을 사용하여 수신 업로드 파일

거의 가장 기본적인 업로드가 정상적인 업로드에 대한 리뷰를 작성하려면 여기를 잊고, 지금은 일반적으로 업로드 할 프레임 워크를 사용하여 업로드

ayui.use ({) (, 기능을 '업로드'
했다 $ = layui.jquery
업로드 = layui.upload;
// // 일반 파일 업로드
했다 uploadInst upload.render = ({
ELEM '#uploadsubsop'
여러 : 사실
, URL : '/ uploadword / uploadwordsop'
수락 : "파일"
전 : 함수 (OBJ) {
이것은이 업로드 업로드 파일 템플릿을 제공 프런트 엔드 프레임 워크는 매우 일반적인되었습니다입니다
간단한 업로드에 대한 궁극적 인
 
이것은 프론트 엔드 인 

<% 페이지 언어 @ = "자바"의 contentType = "text / html과; 문자셋 = UTF-8"
pageEncoding = "UTF-8"%>
<! DOCTYPE HTML>
<HTML>
<HEAD>
<메타 문자 집합 = "UTF-8 ">
<TITLE> 파일文件操作测试</ TITLE>
</ head>
<body>

<입력 유형 = "파일"ID = "파일 1"이름 = "파일 1"스타일 = "표시 : 없음">

<버튼형 = "버튼"ID = "gofile"> 上传 文件 </ 버튼>

</ BODY>

<스크립트 SRC = "https://libs.baidu.com/jquery/1.8.3/jquery.min.js"> </ script>
<스크립트 유형 = "텍스트 / 자바 스크립트">

//提交后台
$ ( "#의 gofile")에 ( "클릭", 기능 () {.
$ ( "# file1을")) (클릭;.
});
. $ ( "#의 FILE1 ')에 ("변경 "기능 () {
VAR formData = 새로운 FormData ();
formData.append ("파일 "$ ("#의 FILE1 ") [0] .files [0]) ;
$ 아약스 ({
유형 : 'POST',
URL : "/ 테스트 / 주 / UploadFile로"
데이터 : formData,
ContentType을 : 거짓
processData : 거짓, 
// dataType와 "JSON",
mimeType를 "다중 / 형상 - 데이터 ",
성공 : 기능 (데이터) {
경우 (데이터 =="true "로) {
경고 ("!成功保存");
} 다른 {
경고 ("!失败保存");
}
}
});
}); 

</ script>

</ HTML>

백엔드
 

/ **
*上传
* @return
* /
@RequestMapping (값 = "/ UploadFile로"방법 = RequestMethod.POST)
@ResponseBody
을 UploadFile 공공 문자열 (@RequestParam ( "파일")의 MultipartFile 파일) IOException가 {던졌습니다

setFile (파일)을 반환 == true "로 사실": "거짓";
}
공공 부울 setFile (의 MultipartFile의 MultipartFile)는 IOException가 {던졌습니다
부울 파일 형식 = 거짓을;
{시도
문자열 packingId = "9527";
문자열 이름 = "";
만약 (!의 MultipartFile = NULL) {
이름 = multipartFile.getOriginalFilename (); //直接返回文件的名字
문자열 subffix = name.substring ( "."name.lastIndexOf () + 1, name.length ()); //我这里取得文件后缀
문자열 NAME1 name.substring = (0,
문자열 파일 이름 = packingId + getDateFormat을 (새로운 날짜 (), "YYYYMMDDHHMMSS"); // 파일을 저장 내가 그에게 이름을 준 와서
문자열 파일 경로를 = "D : \\ 파일 \\"+ packingId,
파일 파일 = 새로운 새로운 파일 (파일 경로 );
IF) {// (File.Exists (에 존재하지 않는 디렉토리를 생성)!
file.mkdirs ();
}
//이 방법을 추가 할 수 있습니다
multipartFile.transferTo를 (새 파일 (파일 +를 " \\"+ fileName에 + + subffix)) "." ; // 파일 저장
}
true로 = 파일 형식을;
} 캐치 (예외 E) {
에서 System.out.println (E)
, 파일 유형 = false로
반환 파일 형식;
}
반환 파일 형식;
}
/ **
* 날짜 형식
*
* @param 날짜
파라미터 : 형식 유형
* @return
* /
공공 정적 문자열 getDateFormat (날짜 날짜, 문자열 formatStr) {
경우 {(StringUtils.isEmpty (formatStr)!)
새 SimpleDateFormat의 (formatStr) .format (날짜)을 반환;
}
NULL을 반환;
}

그것은하기 - 물론, 이것은 다운로드의 환경 상황을 기반으로

<! -이 업로드를 추가 할 수 있습니다 ->
<콩 위에서 언급 한 id = "를 MultipartResolver"클래스 = "org.springframework.web.multipart.commons.CommonsMultipartResolver"/>

 

<! -实现上传需要的항아리 ->
<의존성>
<의 groupId> 커먼스-IO </의 groupId>
<artifactId를> 커먼스-IO </ artifactId를>
<버전> 2.5 </ 버전>
</ 의존성>
<의존성>
<의 groupId> 몬즈 파일 업로드 </의 groupId>
<artifactId를> 몬즈 파일 업로드 </ artifactId를>
<version>은 1.3.2 </ 버전>

</ 의존성>

 

 

추천

출처www.cnblogs.com/Mr-Y1907/p/11270991.html