`
gaowenming
  • 浏览: 166806 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Servlet实现文件下载,不让浏览器自动打开文件

阅读更多

遇到这个问题的人很多,大致情形如下:
1. 客户端向servlet请求一个pdf文件的下载;
2. servlet正确响应,向客户端提供一个输出流;
3. 客户端浏览器接收输出流,自动调用pdf阅读器软件的直接打开这个pdf文件,用户无法控制“另存为”。

  1. response.addHeader( "Content-Disposition" , "attachment ; filename=" + response.encodeURL(downloadfile));  


注意到第一个值项是attachment,这是真正的关键,设定了这个值,浏览器就会老老实实地显示另存为对话框,如果这个值设成inline,则无论怎样浏览器都会自动尝试用已知关联的程序打开文件。

分享到:
评论

相关推荐

    Java Servlet实现在浏览器中打开pdf文件

    以下是一个简单的示例,展示如何创建一个名为`FileDownLoadServlet`的Servlet,用于提供PDF文件下载: 1. 首先,我们需要在Servlet中声明并实现`doGet`方法,这是HTTP GET请求的主要处理点: ```java @Override ...

    ajax实现java文件下载

    4. **前端接收**:Ajax回调函数接收到响应后,浏览器自动处理响应,启动文件下载,用户可以选择保存或打开文件。 总结起来,Ajax实现Java文件下载是一种提高用户体验的有效手段,通过前后端的协同工作,实现了无...

    浏览器向服务器下载文件.rar

    当用户点击这个链接时,浏览器会向服务器发送GET请求,Servlet接收到请求后,根据传递的文件名找到对应的文件并发送给浏览器,从而实现了从服务器向客户端的文件下载。 总之,"浏览器向服务器下载文件.rar"这个场景...

    servlet简单实现文件下载的方法

    当涉及到文件下载时,Servlet可以扮演关键角色。下面我们将详细讨论如何使用Servlet来实现文件的下载功能。 首先,我们需要理解文件下载的基本原理。在Web浏览器向服务器发起下载请求时,服务器需要将文件内容以二...

    servlet文件上传和下载

    总结,Servlet文件上传和下载是Java Web开发中必不可少的功能。理解和熟练掌握这些技术,有助于构建更健壮、安全的Web应用程序。在实际应用中,结合最佳实践和安全措施,可以确保系统的稳定性和用户数据的安全。

    自动生成静态网页技术+servlet实现

    5. **返回响应**:Servlet向客户端发送一个HTTP响应,指示HTML文件的位置,浏览器会自动加载这个静态文件。 6. **优化和缓存**:为了进一步提高性能,可以考虑将生成的HTML文件缓存在内存中,或者使用CDN(内容分发...

    Java代买实现文件上传下载

    2. **设置响应头**:在Servlet中,使用`HttpServletResponse`设置响应头,包括Content-Disposition(指定文件名,浏览器将自动弹出保存对话框),Content-Type(指定文件的MIME类型)和Content-Length(文件大小)。...

    jsp文件下载

    对于较大的文件,浏览器通常会自动显示下载对话框,让用户选择保存文件的位置。 在JSP中,我们可以使用以下步骤来实现文件下载: 1. **创建下载链接**:在JSP页面上,创建一个超链接或者使用表单提交,链接的目标...

    Struts文件上传 下载 打开(不用jar包)

    5. **触发下载**:客户端接收到响应后,浏览器会自动触发文件下载。 **文件打开** 文件打开通常涉及在服务器端或客户端打开一个文件。在Struts中,这可能需要使用重定向或JavaScript来实现: 1. **服务器端打开**...

    Ajax+servlet实现搜索提示列表效果

    在Java Web开发中,"Ajax + Servlet 实现搜索提示列表效果...在提供的"web02search"文件中,可能包含了实现这个功能的HTML、JavaScript、Servlet相关代码和配置文件,具体实现细节可以通过分析这些文件来进一步了解。

    jspsmart实现文件上传下载及jspSmartUploadjar下载文库.pdf

    - 配置文件下载,例如通过设置 `setContentDisposition(null)` 来防止浏览器自动打开文件。 - 下载指定文件,如 `su.downloadFile("/upload/test.doc");` 4. 示例代码解析: 在示例代码中,可以看到JSP页面导入...

    DWR服务器向指定浏览器发送消息(!!!不是所有浏览器)

    DWR(Direct Web Remoting)是一种JavaScript库,它允许在浏览器和服务器之间进行实时的、双向的通信,使得Web应用程序能够实现类似桌面应用的交互体验。DWR的核心是通过AJAX(Asynchronous JavaScript and XML)...

    servlet中文乱码问题

    综上所述,解决Servlet和Tomcat中的中文乱码问题主要通过调整服务器端和客户端的字符编码设置实现。通过修改Tomcat配置文件中的`URIEncoding`属性以及在Servlet中通过`response.setContentType()`和`request.set...

    用户信息系统(Servlet和JSP实现).docx

    为了避免每次修改Servlet代码后都需要重启Tomcat服务器,可以通过修改`context.xml`文件来实现自动部署更新。具体操作步骤如下: 1. 打开Tomcat安装目录下的`conf/context.xml`文件。 2. 在`<Context>`标签内添加`...

    flex文件上传下载

    `browse()` 方法打开文件选择对话框,用户选择文件后,`selectHandler` 函数会被调用。`upload()` 方法用于发起上传请求,将文件发送到指定的 Servlet。 2. Servlet 服务器端:在服务器端,通常使用如 Apache ...

    JspSmartUpload文件上传下载.zip

    文件下载部分,JspSmartUpload虽然不直接提供下载功能,但我们可以结合Java标准库实现。以下是一个基本的文件下载步骤: 1. **确定文件路径**:获取要下载的文件在服务器上的完整路径。 2. **创建Servlet响应**:...

    JavaEE实现文件下载

    在JavaEE中实现文件下载是一项常见的任务,特别是在开发Web应用程序时。下面我们将深入探讨如何在JavaEE环境下实现文件下载,以及处理一些可能遇到的问题。 首先,我们来看一个基础的文件下载示例。在JavaEE中,...

    JasperReport+Servlet Web应用之:打印预览

    - 客户端浏览器接收到响应后,通常会自动打开一个新窗口或标签页显示PDF,用户可以进行预览和打印操作。 4. **MyJasperReportWebPrint项目结构** - 该项目可能包含以下关键部分: - `web.xml`配置文件:定义...

    jsp下载,解决.txt等文件不能直接下载的问题

    当你需要提供文件下载服务,比如.txt、.pdf或任何其他类型的文件时,可能会遇到浏览器尝试直接显示文本文件内容而不是下载它们的问题。这通常是由于浏览器根据文件类型自动处理响应导致的。为了解决这个问题,我们...

Global site tag (gtag.js) - Google Analytics