@RequestMapping(value="/uploadForm", method=RequestMethod.POST) public String uploadForm(MultipartFile file, Model model) throws Exception{ logger.info("originalName : " + file.getOriginalFilename()); logger.info("size : " + file.getSize()); logger.info("contentType : " + file.getContentType()); String savedName = uploadFile(file.getOriginalFilename(), file.getBytes()); model.addAttribute("saveName", savedName); return "uploadResult"; } private String uploadFile(String originalName, byte[] fileDate) throws Exception{ UUID uid = UUID.randomUUID(); String savedName = uid.toString() + "_" + originalName; File target = new File(uploadPath, savedName); FileCopyUtils.copy(fileDate, target); return savedName; }


파일 이름이 중복될 경우 문제가 발생하기 때문에 고유값을 가진 파일이름으로 저장해야 된다.

uploadFile이라는 함수를 만들어서 UUID.randomUUID()을 이용하여 고유값을 가진 값 + 파일명으로 새로운 파일명을 만들고 업로드 함수로 리턴한다.


(출처 : 코드로 배우는 스프링 웹프로그래밍)

반응형

'JSP & Spring' 카테고리의 다른 글

@ModelAttribute, @RequestParam  (0) 2016.09.08
스프링 초기환경세팅  (0) 2016.09.04
utf-8 인코딩.  (0) 2016.09.01
페이징 처리하기 Pagination  (0) 2016.05.09
redirect 문법  (0) 2016.03.31

+ Recent posts