IT 성장 일기

22.06.05-Spring MVC 파일 업로드(라이브러리 및 설정) 본문

IT 학습 노트/Java

22.06.05-Spring MVC 파일 업로드(라이브러리 및 설정)

통통배 노아 2022. 6. 14. 00:57

Final 프로젝트의 중고 물품 등록 페이지에서  물품의 사진을 업로드를 구현하기 위해 파일 업로드에 대하여 알아보았다. 아래의 내용은 부스트코스의 강경미 강사분의 무료강의 내용의 일부이다. 

 

Multipart
웹 클라이언트가 요청을 보낼 때 HTTP프로토콜의 바디 부분에 데이터를 여러 부분으로 나눠서 보내는 것이다. 보통 파일을 전송할 때 사용한다.

HttpServletRequest는 파일 업로드를 지원 하지 않는다.

HttpServletRequest는 HttpServlet 프로토콜의 body부분을 읽어들이는 input stream만을 지원하고 있기 때문에,

HttpServletRequest는 웹 클라이언트가 전송하는 Multipart 데이터를 읽어들이는 메서드를  지원하지 않는다. 

따라서, Stream으로 전달되는 Multipart 부분을 처리하기 위해서는 별도의 라이브러리를 사용해야 한다.

  • 대표적인 라이브러리가 아파치 재단의 commons-fileupload이다.

 

Spring MVC에서의 파일 업로드

Spring MVC에서 파일을 업로드 하려면 몇 가지 라이브러리와 설정을 추가해야 한다.

  • commons-fileupload, commons-io 라이브러리 추가(pom.xml)
  • MultipartResolver Bean 추가