https://mvnrepository.com/artifact/commons-fileupload/commons-fileupload/1.5
pom.xml에 이 의존성을 추가해주면 됨. 나는 가장 최신 버전을 추가했음
<!-- fileupload -->
<dependency>
<groupId>commons-fileupload</groupId>
<artifactId>commons-fileupload</artifactId>
<version>1.5</version>
</dependency>
// 파일 업로드
@Bean
public CommonsMultipartResolver multipart() {
CommonsMultipartResolver multipart = new CommonsMultipartResolver();
// 파일 size(용량)
multipart.setMaxUploadSize(1024 * 1024 * 5);
multipart.setDefaultEncoding("utf-8");
return multipart;
}
위의 코드대로 실행했더니 multipart()라는 이름을 다른 곳에서 bean으로 사용하기 때문에 아예 동작하지 않았음. 그러므로 다음과 같이 bean의 이름을 이미 정해져 있는 이름인 multipartResolver()로 바꾸어 주어야 함.
// 파일 업로드
@Bean
public CommonsMultipartResolver multipartResolver() {
CommonsMultipartResolver multipart = new CommonsMultipartResolver();
// 파일 size(용량)
multipart.setMaxUploadSize(1024 * 1024 * 5);
multipart.setDefaultEncoding("utf-8");
return multipart;
}
파일명을 한글로 하려면 인코딩해 주어야 함
이후 인코딩된 원본파일명을 다시 UTF-8로, ISO-8859-1로 인코딩 해 주어야 함
fileName_org = new String(fileName_org.getBytes("UTF-8"), "ISO-8859-1");