다음은 MultipartHttpServletRequest를 이용하여 폼 페이지에서 멀티파트 타입으로 전송되는 매개변수나 업로드한 파일 데이터를 모두 전달받는 예입니다.
MultipartHttpServletRequest를 적용한 파일 업로드 예
package com.springmvc.chap09;
import java.io.File;
import java.io.IOException;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.MultipartHttpServletRequest;
...
@Controller
@RequestMapping("/exam02")
public class Example02Controller {
@GetMapping("/form")
public String requestForm() {
return "webpage09_01";
}
@PostMapping("/form")
public String submitForm(MultipartHttpServletRequest request) {
String name = request.getParameter("name");
MultipartFile file = request.getFile("fileImage");
String filename = file.getOriginalFilename();
File f = new File("c:\\upload\\" + name + "_" + filename);
try {
file.transferTo(f);
} catch (IOException e) {
e.printStackTrace();
}
return "webpage09_submit";
}
}