파일업로드를 하기 위해서는
http://commons.apache.org
에 올려져있는 FileUpload, IO두개의 라이브러리를 받으면 된다. (기본으로 들어있지 않기 때문에..)
commons-fileupload-1.3.1-bin.zip
다른 버전도 있으므로 확인해서 받는게 좋다
밑에건 압축을 푼 버전이다.
이 라이브러리를 WEB-INF/lib 안에 고이 넣어준다.
주의할점은, hibernate-validator-5.0.0.CR2.jar / validation-api-1.0.0.GA.jar 는 오류가 날수 있으니 빼준다.
폼의 형식은 다음과같이 멀티파트로 하고, input요소는 file로 한다.
이렇게 하고,
스프링 - 컨트롤러에 가서는 매개변수를 MultipartFile image 이런식으로, 매개변수형식과 이름을 맞춰준다.
그리고 자바에서 다음과 같이 함수를 참고한다
//@RequestParam("message")는 어차피 String 매개변수 이름이 같으니 생략해도된다. //request는 contextPath를 알아내기 위해 매개변수로 받는데, 이는 스프링이 지원하는 기능이다. @RequestMapping(value={"/register.do"},method=RequestMethod.POST) public String regist(@RequestParam("message")String message, MultipartFile image,HttpServletRequest request,Model model) throws Exception{ //실제 물리적인 그 주소가 온다. String saveDir = request.getServletContext().getRealPath("/images"); image.transferTo(new File(saveDir + "/" + image.getOriginalFilename())); model.addAttribute("message",message); model.addAttribute("fileName", image.getOriginalFilename()); return "confirm"; }
'웹 & 프레임워크' 카테고리의 다른 글
JSP 상에서 다른페이지 import 해오기 (0) | 2014.05.08 |
---|---|
트랜잭션 (transaction) 설정 (0) | 2014.05.08 |
imagecreatefrom 메서드 관련 오류, gd extenstion (0) | 2014.05.08 |
context.xml 과 jee: 네임스페이스를 이용한 jdbc설정 (0) | 2014.05.08 |
JDBC템플릿을 쓰기위한 스프링 xml 설정 (0) | 2014.05.08 |