업로드된 파일 다운로드

Walter Mitty·2023년 2월 7일
0


브라우저에 있는 a.jpg를 다운로드하는게 아니라 서버에있는 a.jpg를 찾아가서 다운로드를 하는 것이다.

썸네일 파일을 만들어 놓으면 렌더링이 오래걸리는 원본파일보다는 작게 만들어놓은 썸네일 파일을 다운로드하도록, 썸네일용 라이브러리 사용


// 썸네일 파일 만들기 ------
int width = 100;
int height = 100;
String thumbFileName = "t_" + fileName; //썸네일 파일 네임
//썸네일 파일 객체 만들기
File thumbFile = new File(saveDirectory, thumbFileName);
FileOutputStream thumbnailOS = new FileOutputStream(thumbFile); //출력 스트림
InputStream thumbnailIS = f1.getInputStream(); //첨부파일 입력스트림
Thumbnailator.createThumbnail(thumbnailIS, thumbnailOS, width, height);

  • a.jpg 파일이 f1 이라는 이름으로 전달이 된거고 입력스트림을 이용해서 a.jpg의 내용을 읽는다
  • FileOutputStream에 쓰기를 한다. target은 thumbnailfilename으로 저장해놓은 t_a.jpg이고 그 객체를 해당 디렉토리에 생성을해서 출력 스트림으로 얻어온다.
  • 인풋스트림을 읽어서 t_a.jpg를 쓰기를 해주는게 .createThumbnail 메서드이다.

Thumbnailator.createThumbnail(thumbnailIS, thumbnailOS, width, height);
thumbnailIS: 읽기
thumbnailOS: 쓰기

  • t_원본파일명 이름으로 잘 들어간다!
  • 크기도 작아졌다!


이미지 그대로 보려면 inline으로,

  • : ㅇ!!!!!!!!!!!!!!! 신기해!! 원본파일 다운로드
    • 썸네일 다운로드는 시간도 덜걸리고 작아서 네트워크 비용이 그만큼 줄어든다.

확장자가 다양하니까 게시글 번호로만 찾기

0개의 댓글