기본 SpringMVC 구성은 이전 기사에서 작성되었습니다. 이 기사는 주로 SpringMVC를 사용하여 양식에 파일을 업로드하고 여러 파일을 동시에 업로드하는 방법을 설명합니다.
파일 업로드 프로젝트의 소스 코드 다운로드 : 데모
1. 구성 파일 :
SpringMVC는 MultipartFile을 사용하여 파일을 업로드하므로 먼저 Multipartresolver를 구성해야합니다. 파일을 양식으로 처리해야합니다.
<!-스프링을 사용하여 파일 업로드에 대한 멀티 패트 레졸버 Commosmultipartresolver 구성-> <beans : bean id = "multipartresolver"p : defaultEncoding = "utf-8"p : maxuploadsize = "5400000"p : uploadtempdir = "FileUpload/temp"> : bean>.
속성에 대해 자세히 설명합니다.
2. 간단한 업로드 양식 작성 :
<body> <h2> 파일 업로드 인스턴스 </h2> <form action = "fileUpload.html"method = "post"encType = "multipart/form-data"> 파일 선택 : <input type = "file"name = "file"> <입력 유형 = "제출"값 = "제출"> </body>
양식이 파일을 처리해야한다는 것을 나타내려면 Form Tag에 ENCTYPE = "Multipart/Form-Data"를 추가해야합니다. 이것은 가장 기본적인 것입니다. 많은 사람들이 업로드 오류 후 프로그램을 찾는 오류를 잊어 버리지만이 점을 잊어 버리십시오.
3. 업로드 제어 클래스를 쓰십시오
1. 제어 클래스 생성 : FileUploadController 및 결과 목록을 반환하는 페이지.
2. 양식을 제출하려면 조치를 작성하십시오.
// Spring의 Autowive Annotation을 통해 Spring의 기본 구성 요청을 가져옵니다. / *** * @RequestParam 주석으로 파일을 업로드하여 양식의 파일이 multipartFile * * @param 파일 */ @RequestMapping ( "fileUpload") public String fileUpload ( "file") multipartfile 파일) {// file string이 if (!))인지 결정합니다. FilePath = requestSession (). getServletContext (). getRealPath ( "/") + "upload/" + file.getoriginalFilename (); // TransferTo (새 파일 (FilePath)); } catch (예외 e) {e.printstacktrace (); }} // 리디렉션 return "retirect : /list.html"; }/*** * 업로드 된 파일의 모든 파일을 읽고 return * * @return */@requestmapping ( "list") public modelandview list () {String filepath = requestsession (). getServletContext (). getRealPath ( "/") + "upload/"; ModelAndView mav = new ModelAndView ( "List"); 파일 uploaddest = 새 파일 (FilePath); 문자열 [] filenames = uploadDest.List (); for (int i = 0; i <filenames.length; i ++) {// 파일 이름 system.out.println (filenames [i]); } return mav; } 3. SpringMVC 주석 요청 파람을 사용하여 양식에 파일 매개 변수를 지정합니다.
4. 파일을 저장하기 위해 웹 프로젝트 경로를 지정하십시오
5. 지정된 경로로의 멀티 파일의 전송 (파일 dest) 방법.
이 시점에서 기본 파일 업로드가 끝났습니다.
MultipartFile 클래스의 일반적으로 사용되는 일부 방법 :
4. 여러 파일을 업로드하십시오.
여러 파일을 업로드하는 것은 실제로 매우 간단합니다. CheckBox와 같은 다른 동일한 매개 변수를 업로드하는 것과 같이 양식에서 동일한 이름을 사용한 다음 MultipartFile 매개 변수 클래스를 동작의 배열로 정의하십시오.
다음 구현 :
1. 여러 파일을 업로드하는 양식을 만듭니다.
<body> <h2> </h2> <form action action = "filesupload.html"메소드 = "post"encmype = "multipart/form-data ="post "form-data"> <p> 파일 선택 : <input type = "file"name = "files"> <p> 파일 선택 : <input type "file"name = "files"> <input type = "pute = input> <pute = input. 타입 = "제출"값 = "제출"> </form> </body>
2. 양식을 처리하고 공유를 용이하게하기 위해 파일을 저장하기위한 별도의 메소드를 작성하는 조치를 작성하십시오.
/**** 파일 저장* @param 파일* @return*/private boolean savefile (multipartFile 파일) {// 파일이 비어있는 경우 (! file.isempty ()) {try {// path string filepath = request.getSession (). getervletContext (). getRealPath ( "/") + " +" + " +" + " // TransferTo (새 파일 (FilePath)); 진실을 반환하십시오. } catch (예외 e) {e.printstacktrace (); }} 거짓을 반환합니다. } 3. 작업 쓰기 :
@requestmapping ( "filesupload") public string filesupload (@requestparam ( "files") multipartfile [] files) {// 파일 배열 판단은 비어있을 수없고 길이는 0보다 큽니다. 파일 [i]; // 파일을 저장 SaveFile (파일); }} // 리디렉션 return "retirect : /list.html"; }마지막으로 파일을 업로드하려면 프로젝트를 실행하십시오.
위는이 기사의 모든 내용입니다. 모든 사람의 학습에 도움이되기를 바랍니다. 모든 사람이 wulin.com을 더 지원하기를 바랍니다.