이 게시물은 스프링 MVC 4를 사용하여 파일 다운로드를 구현하는 방법을 보여줍니다. 파일 시스템에서 파일 내부 응용 프로그램뿐만 아니라 외부 파일에 대한 파일 다운로드를 볼 수 있습니다. 가자. 나는 그것의 ResourceHttpMessageConverter와 봄에 내장 된 지원을 사용하여이 라인을 스트리밍 할 수 있었다. 이 자습서에 대 한 마임 형식 감사를 확인할 수 있는 경우 콘텐츠 길이 및 콘텐츠 형식을 설정 합니다. 함수 getFile()이 정의된 위치가 궁금합니다. 시스템의 어딘가에서 파일을 얻으려면 그것을 사용하는 것이 분명하지만, 나는 아무것도 놓치지 않도록하고 싶습니다. 안부, Spring Mvc 프레임 워크는 스프링 Mvc 웹 응용 프로그램에서 파일을 다운로드하기위한 몇 가지 방법을 제공합니다. 다음은 다음과 같습니다 내 파일은 E와 같은 다른 디렉토리에 저장 :/Upload /Docs/Naresh.doc 다운로드 하는 방법 U 는 내가 동적으로 콘텐츠 유형을 설정의 예를 여기보고 싶습니다 말해 주시기 바랍니다. 이는 사용자가 이전에 업로드한 콘텐츠를 서비스할 때 필요하며 JPEG뿐만 아니라 PNG 및 GIF 이미지일 수도 있습니다.

스프링 3.0을 사용하면 HttpEntity 반환 개체를 사용할 수 있습니다. 이 것을 사용하는 경우 컨트롤러에는 HttpServletResponse 개체가 필요하지 않으므로 테스트하기가 더 쉽습니다. 이 것을 제외하고,이 대답은 인펠리고 중 하나와 상대적입니다. 이 섹션에서 개발자는 파일 다운로드 기능을 허용하는 샘플 Spring Mvc 응용 프로그램을 만드는 방법을 배웠습니다. 개발자는 다운로드 섹션에서 이클립스 프로젝트로 샘플 응용 프로그램을 다운로드하고 데이터베이스 연결 설정을 업데이트해야 합니다. 클라이언트에 정적 파일을 제공하는 것은 다양한 방법으로 수행 할 수 있으며 스프링 컨트롤러를 사용하는 것이 반드시 최상의 옵션은 아닙니다. 필요한 Java 파일을 만들어 보겠습니다. SRC / 메인 / 자바 폴더, 새로운 -> 패키지를 마우스 오른쪽 버튼으로 클릭합니다. web.xml 파일은 모든 종류의 요청을 수신하기 위해 하나의 서벌렛(예: 디스패처 서발렛)을 선언하고 응용 프로그램에 액세스할 때 기본 페이지를 지정합니다. 디스패처 서볼렛은 여기서 전면 컨트롤러 역할을 합니다.

다음 코드를 추가: 개발자가 Spring Mvc, 서브렛 Api, MySQL 및 Log4j 등과 같이 원하는 종속성을 추가할 수 있습니다. 응용 프로그램 빌드를 시작해 보겠습니다! 이것은 스프링 Mvc와 파일 다운로드의 예입니다. 우리는 HttpServletResponse를 사용하여 FileCopyUtils를 사용하여 서볼렛출력 스트림에 직접 파일을 쓸 수 있습니다. 이 메서드의 반환 형식은 무효화됩니다. 첫째, 브라우저가 와이어를 통해 전송되는 파일을 이해하기 위해 콘텐츠 유형, 콘텐츠 처리 및 콘텐츠 길이와 같은 적절한 헤더를 설정해야 합니다. 콘텐츠 처리 헤더는 파일을 다운로드하는 데 사용되는 파일 이름과 파일을 첨부 파일로 다운로드하거나 브라우저에 표시해야 하는지 여부를 브라우저에 지시합니다. 우리가 여기에서했던 것처럼 첨부 파일을 사용하면 첨부 파일로 직접 다운로드됩니다.