반응형
1. 라이브러리 의존성 등록
https://mvnrepository.com/artifact/commons-fileupload/commons-fileupload/1.4
2. 아래와 같이 코드 작성
package site.metacoding.blogv3.util;
import static org.junit.jupiter.api.Assertions.assertEquals;
import java.io.File;
import java.io.FileInputStream;
import java.io.InputStream;
import java.io.OutputStream;
import java.nio.file.Files;
import org.apache.commons.fileupload.FileItem;
import org.apache.commons.fileupload.disk.DiskFileItem;
import org.apache.commons.io.IOUtils;
import org.junit.jupiter.api.Test;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.commons.CommonsMultipartFile;
public class UtilMultipartFileTest {
@Test
public void multipartfile_테스트() {
try {
File file = new File(
"C:\\workspace\\repositories\\spring_lab\\blogv3\\src\\main\\resources\\static\\images\\dog.jpg");
FileItem fileItem = new DiskFileItem("mainFile", Files.probeContentType(file.toPath()), false,
file.getName(),
(int) file.length(), file.getParentFile());
InputStream input = new FileInputStream(file);
OutputStream os = fileItem.getOutputStream();
IOUtils.copy(input, os);
MultipartFile multipartFile = new CommonsMultipartFile(fileItem);
System.out.println("========================");
System.out.println(multipartFile.getOriginalFilename());
System.out.println("========================");
assertEquals("dog.jpg", multipartFile.getOriginalFilename());
} catch (Exception e) {
System.out.println("========================");
System.out.println(e.getMessage());
System.out.println("========================");
}
}
}
3. Mock로 간단하게 만드는 법
반응형