> Java > java지도 시간 > Java Servlet에서 파일 다운로드 기능을 구현하는 방법은 무엇입니까?

Java Servlet에서 파일 다운로드 기능을 구현하는 방법은 무엇입니까?

王林
풀어 주다: 2023-04-26 18:37:08
앞으로
1673명이 탐색했습니다.

1. 설명

서블릿은 데이터를 대화형으로 탐색 및 생성하고 동적 웹을 생성하기 위해 Sun Corporation에서 개발한 기술입니다. 좁은 의미의 서블릿은 자바 언어로 구현된 인터페이스를 말한다. 하지만 일반적으로 우리는 서블릿 인터페이스를 구현하는 자바 프로그램을 Servlet

2이라고 부릅니다. 다운로드하려면 서블릿 프로그램을 사용하세요

//得到需要下载的文件
String path = this.getServletContext().getRealPath("/upload/9/1/图片1.png");
File file = new File(path);
//读取服务器本地的文件
FileInputStream in = new FileInputStream(file);
/**
 * 处理URL编码问题
 */
String fileName = file.getName();
//对文件名进行URl编码
fileName = URLEncoder.encode(fileName, "utf-8");
//判断不同浏览器
String userAgent = request.getHeader("user-agent");
String filefix = null;
if(userAgent.contains("Trident")){
//IE
filefix = "filename="+fileName;
}else if(userAgent.contains("Firefox")){
//Firefox
filefix = "filename*="+fileName;
}else{
filefix = "filename="+fileName;
}
//告诉浏览器以下载方式打开资源
response.setHeader("Content-Disposition", "attachment;"+filefix);
//把本地文件发送给浏览器
byte[] buf = new byte[1024];
int len = 0;
while( (len=in.read(buf))!=-1 ){
response.getOutputStream().write(buf, 0, len);
}
//关闭
in.close();
로그인 후 복사
.

위 내용은 Java Servlet에서 파일 다운로드 기능을 구현하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:yisu.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿