파일 다운로드 spring

그런 다음 응답에 이진 스트림으로 파일을 씁니다. 끝에 응답을 수행 하는 것을 잊지 마십시오. 이것은 스프링 Mvc와 파일 다운로드의 예 였다. 첫 번째 링크에 Clink. 내부 파일 [PDF는] 콘텐츠 처리: 인라인으로 인해 브라우저에 표시 되어야 합니다. 인라인으로, 콘텐츠가 브라우저에 표시 될 수 있는 경우, 그것은 브라우저에 표시 됩니다. 다운로드 링크를 클릭 하면 브라우저가 특정 파일을 다운로드 하도록 요청 합니다. Web.xml 파일은 모든 종류의 요청을 수신 하기 위해 하나의 서블릿 (즉, 디스패처 서블릿)을 선언 하 고 애플리케이션에 액세스 할 때 기본 페이지를 지정 합니다. 여기에서 디스패처 서블릿은 프런트 컨트롤러로 작동 합니다. 다음 코드를 추가 합니다.

파일 다운로드는 매우 간단 하며 다음 단계를 포함 합니다. Spring Mvc는 다양 한 프리 젠 테이 션 기술에 대 한 보기의 많은 유형을 지원 합니다. 여기에는 JSP, HTML, XML 등이 포함 됩니다. 그래서 우리는 스프링의 간단한 보기를 작성 할 수 있습니다/Ms/cin/swebapp/web-m/svin 폴더. 이 페이지에는 스프링 컨트롤러 클래스의 메서드에서 처리 되는 다운로드 파일 링크 (예: Filedownload 컨트롤러 .java)가 표시 됩니다. 다음 코드를 추가 합니다. 파일을 쓰기 전에 콘텐츠 형식, 콘텐츠 처리 및 콘텐츠 길이 헤더를 설정 해야는 ServletOutputStream 또는 처리기 메서드에서 파일을 리소스로 반환 합니다. 클릭 “다운로드 abc .pdf” 링크, 그것은 열 것 이다 다른 이름으로 저장 대화 상자. 아래 다운로드 컨트롤러는 파일을 다운로드할 때 사용 됩니다. 스프링 MVC를 통해 파일을 다운로드 하는 방법에는 세 가지가 있습니다. 이 예제의 뒷부분에서는 개별적으로 살펴보겠습니다. 파일을 가져올 때 파일이 있는지 확인 합니다.

파일이 존재 하지 않는 경우, 우리는 응답에 어떤 헤더를 설정 하기 전에 FileNotFoundException을 던져. 이것은 중요 한, 그렇지 않으면 예외 핸들러는 예외를 제대로 해결 되지 않습니다. 내가 빨리 생각할 수 있는 것은, pdf를 생성 하 고 코드에서 webapp/다운로드/에 저장 하 고 HttpServletRequest를 사용 하 여이 파일에 전달 하는 것은 스프링에 내장 된 지원을 사용 하 여 라인을 스트리밍 할 수 있었습니다. 를 제공 합니다. 파일을 다운로드 하는 mime 형식을 결정할 수 있는 경우 콘텐츠 길이 및 콘텐츠 형식을 설정 하지만 콘텐츠의 텍스트가 누락 된 경우이 컨트롤러에는 두 개의 파일이 포함 됩니다. 한 파일은 응용 프로그램 (내부 리소스)에 내부 이며 다른 파일은 응용 프로그램 외부의 파일 시스템에 있습니다. 프로젝트의 외부 파일 경로를 변경 해야 합니다. 데모 목적 으로만 path에 추가 경로 변수 (내부/외부)를 포함 시켰습니다. 우리는 사용 하는 스프링 FileCopyUtils 소스에서 대상으로 스트림을 복사 하는 유틸리티 클래스. 사용 하 여 파일을 직접 쓸 수는 HttpServletResponse를 사용 하 여는 ServletOutputStream 합니다. 이 메서드의 반환 형식은 void입니다. 첫째,-브라우저는 와이어를 통해 전송 되는 파일을 이해 하기 위해-우리는 같은 적절 한 헤더를 설정 해야: 콘텐츠 유형, 콘텐츠 처리 및 콘텐츠 길이.

내용-처리 헤더는 파일을 다운로드 하는 데 사용 되는 filename 및 파일을 첨부 파일로 다운로드 하거나 브라우저에 표시 해야 하는지 여부를 브라우저에 지시 합니다. 여기에서 했던 것 처럼 첨부 파일을 사용 하면 파일이 첨부 파일로 직접 다운로드 됩니다. 응용 프로그램 개발에서는 대부분의 경우 브라우저 요청을 사용 하 여 서버측에서 파일, xls 보고서 등의 리소스를 다운로드 해야 했습니다.

Comments are closed.