파일 크기를 줄이기 위해, 업로드한 이미지 파일을 서버에서 **리사이징(Resizing)**하거나 **압축(Compress)**할 수 있습니다. Java에서는
Thumbnails 라이브러리나 BufferedImage를 사용하여 이미지 파일을 리사이징하는 방법이 있습니다.Thumbnails 라이브러리 사용 예시:
Thumbnails는 이미지 처리에 가장 많이 사용되는 라이브러리 중 하나입니다. 이 라이브러리를 사용하여 이미지를 리사이징하고, 파일을 저장할 수 있습니다.- Thumbnails 라이브러리 추가 (Maven 또는 Gradle):
- Maven:
- Gradle:
- 팀플 코드 예제
xml
코드 복사
<dependency>
<groupId>net.coobird</groupId>
<artifactId>thumbnailator</artifactId>
<version>0.4.8</version>
</dependency>
gradle
코드 복사
implementation 'net.coobird:thumbnailator:0.4.8'
import net.coobird.thumbnailator.Thumbnails;
import java.io.File;
import java.io.IOException;
public class MyFile {
public static String filesave(MultipartFile file) throws IOException {
// 파일 저장 경로 설정 (예: ./profileimg/)
String imagePath = "./profileimg/";
String fileName = file.getOriginalFilename();
File outputFile = new File(imagePath + fileName);
// 이미지 리사이징 (예: 300x300 크기로 변경)
Thumbnails.of(file.getInputStream())
.size(300, 300)
.toFile(outputFile);
return fileName; // 저장된 파일명 반환
}
}Share article