[Spring] 스프링으로 파일 업로드, 다운로드 구현하기 (3) – DB …
업로드한 파일의 이름을 랜덤하게 생성하는 것도 좋은 방법이지만, 다운로드 시에 원래 파일 이름으로 저장하면 사용자에게 더 직관적이고 편리하게 다가갈 수 있습니다. 사용자는 다운로드한 파일의 이름을 보고 어떤 파일인지 쉽게 알 수 있고, 파일을 관리하기도 훨씬 용이해집니다.
예를 들어, 사용자가 이미지 파일을 업로드했는데, 파일 이름이 “IMG_20230315_123456.jpg” 로 저장되었다고 가정해 봅시다. 다운로드 시에도 같은 파일 이름으로 저장된다면, 사용자는 “IMG_20230315_123456.jpg” 파일이 이미지 파일인지, 어떤 내용을 담고 있는지 짐작하기 어려울 수 있습니다. 하지만 원래 파일 이름인 “my_cat.jpg” 로 저장된다면, 사용자는 다운로드한 파일이 고양이 사진이라는 것을 바로 알 수 있고, 파일 관리에도 훨씬 편리할 것입니다.
Content-Disposition 헤더는 HTTP 응답 헤더 중 하나로, 웹 브라우저가 파일을 다운로드할 때 어떻게 처리할지 지시하는 역할을 합니다. 이 헤더를 사용하여 다운로드 파일 이름을 지정할 수 있습니다.
Content-Disposition 헤더의 “attachment” 값은 파일을 다운로드하여 로컬 시스템에 저장하도록 지시합니다. 또한, “filename” 값을 사용하여 다운로드 파일의 이름을 지정할 수 있습니다.
다음은 Spring에서 Content-Disposition 헤더를 사용하여 다운로드 파일 이름을 지정하는 예시입니다.
“`java
HttpHeaders headers = new HttpHeaders();
headers.setContentDisposition(ContentDisposition.attachment().filename(“my_cat.jpg”));
“`
위 코드는 “my_cat.jpg” 파일을 다운로드할 때, 파일 이름을 “my_cat.jpg” 로 저장하도록 지시합니다.
Content-Disposition 헤더를 사용하면 사용자에게 더 나은 사용자 경험을 제공할 수 있으며, 파일 관리도 더욱 효율적으로 할 수 있습니다.
여기에서 더 많은 정보를 확인하세요: khamphachauau.net
Categories: 스프링 파일 업로드: 쉬운 방법과 주의 사항