방법 1 :
자바:
( "/ TESTFILE"@RequestMapping ) 공용 문자열 파일 업로드 (a의 MultipartFile의 MultipartFile) { 문자열 경로 = "D : \\ 업로드 테스트 \\ \\" ; // 이전 문자열 [] TYPE = multipartFile.getOriginalFilename () 스플릿 ( "\. \. "); //는 같은 화상 타입 얻기 위해 : JPG 문자열 파일명 = 새로운 새 ) 다음 getTime ()을 ... 날짜 (+" "+ multipartFile.getOriginalFilename () 스플릿 ("\\ ") type.length-1. ]; // 이 파일의 이름은 : 날짜 .xxx에 // 경로 파일 파일 = 새로운 새로운 파일 (경로); //이 폴더를 생성하지 않는 존재 IF (&&) (File.Exists를! file.isDirectory을 ()) { file.mkdirs (); } myfile 파일 = 새로운 파일 (경로 +의 파일 이름); 시도 { multipartFile.transferTo (myfile을); } 캐치 (예외 : IllegalStateException 전자) { e.printStackTrace (); } 캐치 (IOException이 전자) { e.printStackTrace (); } 반환 파일 이름을; }
자체 테스트 :
이 파일은 D 디스크 업로드 테스트 케이스에 저장됩니다.
방법 2 :
공용 정적 최종 문자열는 FileUpload (a의 MultipartFile의 MultipartFile 문자열 경로)를 발생 IOException이 { 문자열 [] 타입 = multipartFile.getOriginalFilename () 스플릿 ( "\\."); // JPG : 같은 화상 타입에 대한 문자열 이름 = 새로운 새 일 ( . "."). .getTime () + + multipartFile.getOriginalFilename () 스플릿 ( "\\") -type.length 1이다.]; // 파일로 명명 된 다음 .xxx에 // 경로 파일 파일 = 새로운 새 파일 (경로); // 폴더를 만들 존재하지 않는 IF (File.Exists () &&! file.isDirectory ()) { file.mkdirs (); } 아웃 DataOutputStream 정렬 = 새로운 새 DataOutputStream 정렬 ( 새로운 새 FileOutputStream 또는 (파일명 + 경로)); //는 절대 파일로 저장 InputStream 인 = 7 널 ; // 액세서리 입력 스트림 은 try는 { IS = multipartFile.getInputStream () 의 바이트 [] B = 새로운 새 바이트 [ is.available ()]; // 읽을 수있는 바이트의 개수에 가능한 데이터 스트림 is.read (B) out.write (B) } 캐치 (IOException이 예외) { Exception.printStackTrace () ; } 마지막 { 경우 이다 (! = null의 ) { is.close (); } 경우 (교체 아웃! = null이 ) { out.close (); } } 반환 파일 이름을; }