반응형
내용 설명
Spring 5부터는 Controller 에서 Multipart 를 @RequestPart
어노테이션을 통해
별도 설정 없이 사용할 수 있다.
스프링 4와는 다르게 Jackson JSON 을 사용하고 있어도 별도 설정자체가 필요없다.
Controller
C:\ServerFiles 라는 폴더를 만들어서 실행하자.
핵심 기능만 빠르게 보기 위해 Folder 존재 유무 / 생성 등 소스는 뺐다.
MultipartFile을 통해 내용을 받고 getName() 으로 파일명을 받을 수 있다.
Request DTO 를 던져서 받고 싶다면, @RequestParam으로 받으면 된다. (ex: @RequestParam("title") String title)
@PostMapping(value="/upload") @ResponseBody public void fileUpload(@RequestPart MultipartFile files) { try { String baseDir = "C:\\ServerFiles"; files.transferTo(new File(baseDir + "\\"+ files.getOriginalFilename())); } catch (Exception e) { e.printStackTrace(); } }
JSP
잡다한 거 없이 form tag 내에 file upload 부분과 전송 부분만 만들었다.
file input 의 name 은 controller 의 Parameter Name과 맞춰주자.
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>File Upload</title> </head> <body> <form action="/upload" method="post" enctype="multipart/form-data"> <input type="file" name="files"> <button type="submit">보내기</button> </form> </body> </html>
화면은 아래와 같이 생겼다.
예제 저장소
반응형
'Java & Spring > Spring' 카테고리의 다른 글
Springboot + Web 에서 /resources/static 정적 리소스 URL 접근 방법 (0) | 2020.01.12 |
---|---|
[빠르게 보는 스프링] 스프링부트 Test를 위한 Embedded Redis 사용하기 (0) | 2020.01.06 |
자바 메일 보내기 예제 ( 구글 ) (0) | 2017.10.24 |
XSS 대응 방법 (0) | 2017.06.19 |
pom에서 properties 사용 (0) | 2017.04.06 |
WRITTEN BY
,