JSP实现从不同服务器上下载文件的方法

本文实例讲述了JSP实现从不同服务器上下载文件的方法。分享给大家供大家参考,具体如下:

最近在项目当中遇到模板下载的问题:当服务器为Tomcat的时候文件可以正常下载,但是当放到线上(WebLogic服务器)下载的模板为空,现记录下解决办法。

public void importSuccess() throws Exception {
  try {
   HttpServletResponse response = Struts2Utils.getResponse();
   // 重置响应
   response.reset();
   // 设置响应头为二进制流
   response.setContentType("application/x-msdownload;charset=utf-8");
   response.setContentType("APPLICATION/OCTET-STREAM ");
   response.setContentType("application/vnd.ms-excel");
   response.setHeader("Content-Disposition",
     "attachment; filename=ComplaintsImportModel.xls");
   String path = this.getClass().getClassLoader().getResource("/")//这里才是问题的关键,WebLogic服务器要在读取添加一个"/"
     .getPath();
   path = path.substring(1, path.length());
   String name = File.separator + path + "ComplaintsImportModel.xls";
   logger.info("**********************************" + name
     + "*******************************");
   InputStream is = new FileInputStream(name);
   HSSFWorkbook wb = new HSSFWorkbook(is);
   // 得到 文件流
   OutputStream out = response.getOutputStream();
   wb.write(out);
   is.close();
   out.flush();
   out.close();
  } catch (Exception e) {
   logger.error("下载导出模版失败", e);
  }
}

留着以后备用

希望本文所述对大家jsp程序设计有所帮助。

(0)

相关推荐

  • JSP中实现判断客户端手机类型并跳转到app下载页面

    判断客户端手机类型,并跳转到相应的app下载页面 实现的原理,是检测浏览器的 USER-AGENT 这个header,然后根据正则表达式来确定客户端类型. 如果都不匹配,Fallback回退策略是显示对应的页面,让用户自己选择. 适合采用二维码扫描方式下载APP: JSP版本的代码如下所示:其他服务端版本请百度搜索. <%@page import="java.util.regex.Matcher"%> <%@page import="java.util.re

  • JSP隐含对象response实现文件下载

    一.简单介绍JSP隐含对象response实现文件下载 (1)在JSP中实现文件下载最简单的方法是定义超链接指向目标资源,用户单击超链接后直接下载资源,但直接暴露资源的URL也会带来一些负面的影响,例如容易被其它网站盗链,造成本地服务器下载负载过重. (2)另外一种下载文件的方法是使用文件输出流实现下载,首先通过response报头告知客户端浏览器,将接收到的信息另存为一个文件,然后用输出流对象给客户端传输文件数据,浏览器接收数据完毕后将数据另存为文件,这种下载方法的优点是服 务器端资源路径的保

  • JSP开发之Struts2实现下载功能的实例

    JSP开发之Struts2实现下载功能的实例 1.Action 类 package com.favccxx.strutsdemo; import java.io.File; import java.io.FileInputStream; import java.io.InputStream; import com.opensymphony.xwork2.ActionSupport; public class DownloadAction extends ActionSupport { priva

  • JSP response对象实现文件下载的两种方式

    一.JSP隐含对象response实现文件下载的介绍 (1)在JSP中实现文件下载最简单的方法是定义超链接指向目标资源,用户单击超链接后直接下载资源,但直接暴露资源的URL 也会带来一些负面的影响,例如容易被其它网站盗链,造成本地服务器下载负载过重. (2)另外一种下载文件的方法是使用文件输出流实现下载,首先通过response报头告知客户端浏览器,将接收到的信息另存 为一个文件,然后用输出流对象给客户端传输文件数据,浏览器接收数据完毕后将数据另存为文件,这种下载方法的优点是服 务器端资源路径的

  • JSP实现从数据库导出数据到Excel下载的方法

    本文实例讲述了JSP实现从数据库导出数据到Excel下载的方法.分享给大家供大家参考,具体如下: 关键代码: <%@ page contentType="application/msexcel" %> <% //response.setHeader("Content-disposition","inline; filename=videos.xls"); response.setHeader("Content-disp

  • JSP实现远程文件下载保存到服务器指定目录中的方法

    本文实例讲述了JSP实现远程文件下载保存到服务器指定目录中的方法.分享给大家供大家参考,具体如下: <%@page import="java.net.*,java.io.*"%> <%! public boolean saveUrlAs(String photoUrl, String fileName) { //此方法只能用户HTTP协议 try { URL url = new URL(photoUrl); HttpURLConnection connection =

  • JSP数据分页导出下载显示进度条样式

    1.思路 分页数据查询,同时缓存设置进度(为当前取出数据点总数据比例) 2.界面进度条 为 异步请求缓存比例 3.代码 css: body{ position:relative; } .mask{ position:absolute; left:0px; top:0px; height:100%; width:100%; background-color: #eee; display:none; filter:alpha(opacity=50); /*IE滤镜,透明度50%*/ -moz-opa

  • jsp实现Servlet文件下载的方法

    本文实例讲述了jsp实现Servlet文件下载的方法.分享给大家供大家参考.具体如下: package com; import java.io.IOException; import java.io.PrintWriter; import java.net.URLEncoder; import java.util.Date; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import j

  • JSP实现从不同服务器上下载文件的方法

    本文实例讲述了JSP实现从不同服务器上下载文件的方法.分享给大家供大家参考,具体如下: 最近在项目当中遇到模板下载的问题:当服务器为Tomcat的时候文件可以正常下载,但是当放到线上(WebLogic服务器)下载的模板为空,现记录下解决办法. public void importSuccess() throws Exception { try { HttpServletResponse response = Struts2Utils.getResponse(); // 重置响应 response

  • jsp+ajax实现无刷新上传文件的方法

    本文实例讲述了jsp+ajax实现无刷新上传文件的方法.分享给大家供大家参考,具体如下: 列表页:selectaddress.jsp js页:ajax_edit.js jsp处理页:editaddress.jsp 上传工具类:UploadUtil.java 思想:由于安全问题,javascript操纵不了文件, 导致ajax不能动态上传文件,所以选择了iframe, 列表页把form表单提交到一个隐式的iframe里面,设置表单的属性 复制代码 代码如下: enctype='multipart/

  • php实现从ftp服务器上下载文件树到本地电脑的程序

    复制代码 代码如下: /* 用ftp_nlist()函授时,返回的数组值会有两种类型:因服务器不同而异 a:单独的文件名 b:包含目录的文件名. 如果挪用,请注意更改此处. */ <?php function download_file($dir,$fc,$_FILE_) { $fn=ftp_nlist($fc,".");//列出该目录的文件名(含子目录),存储在数组中 $size=sizeof($fn); $dir=($dir=="")?$dir:('/'.

  • python实现从ftp上下载文件的实例方法

    python从ftp上下载文件的方法: 首先导入ftp模块: 然后使用[chdir]命令切换工作路径: 再使用"self.ftp.nlst()"命令获取目录下的文件: 最后使用"self.ftp.retrbinary()"命令下载ftp文件即可. #!/usr/bin/python # coding=utf-8 import os from ftplib import FTP # 引入ftp模块 class MyFtp: ftp = FTP() def __init

  • Java实现ftp上传下载、删除文件及在ftp服务器上传文件夹的方法

    一个JAVA 实现FTP功能的代码,包括了服务器的设置模块,并包括有上传文件至FTP的通用方法.下载文件的通用方法以及删除文件.在ftp服务器上传文件夹.检测文件夹是否存在等,里面的有些代码对编写JAVA文件上传或许有参考价值,Java FTP主文件代码: package ftpDemo; import java.io.DataOutputStream; import java.io.InputStream; import java.io.OutputStream; import sun.net

  • 在Linux服务器和windows系统之间上传与下载文件的方法

    背景:Linux服务器文件上传下载. XShell+Xftp安装包(解压即用)百度网盘链接: https://pan.baidu.com/s/1rT_oXxbIjWgiHy9JHiWakw 提取码: cqrt 方式一.通过Shell First. 开启本地虚拟机,在Shell中连接本地Linux服务器,其中主机填Linux的IP地址.用户名和密码是Linux的登陆名和密码.其它的保留默认值,确定,然后接受并保存即可. Second sz命令发送文件到本地 # sz filename rz命令本地

  • Python通过paramiko远程下载Linux服务器上的文件实例

    如下所示: #!/usr/local/bin/python # encoding:utf-8 import paramiko import os HOST_IP='59.110.12.72' REMOTE_PATH='/proc' REMOTE_FILENAME='meminfo' LOCAL_PATH='./proc' USERNAME='niu' PASSWORD='123456' def remote_scp(host_ip,remote_path,local_path,file_name

  • JAVA通过HttpURLConnection 上传和下载文件的方法

    本文介绍了JAVA通过HttpURLConnection 上传和下载文件的方法,分享给大家,具体如下: HttpURLConnection文件上传 HttpURLConnection采用模拟浏览器上传的数据格式,上传给服务器 上传代码如下: package com.util; import java.io.BufferedInputStream; import java.io.BufferedReader; import java.io.DataOutputStream; import java

  • python 读取Linux服务器上的文件方法

    使用Python语句,读取Linux远端服务器上的文件打印到控制台的代码实现: 下载包:paramiko import paramiko #服务器信息,主机名(IP地址).端口号.用户名及密码 hostname = "" port = 22 username = "" password = "" client = paramiko.SSHClient() client.set_missing_host_key_policy(paramiko.Au

  • SpringMVC跨服务器上传文件中出现405错误的解决

    目录 SpringMVC跨服务器上传文件中出现405错误 重点来了~ SpringMVC跨服务器上传文件中出现405错误 下面是 应用服务器 的代码 package com.itheima.controller; import com.sun.jersey.api.client.Client; import com.sun.jersey.api.client.WebResource; import org.apache.commons.fileupload.FileItem; import or

随机推荐