程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> JSP編程 >> 關於JSP >> JSP實現從不同服務器上下載文件的方法

JSP實現從不同服務器上下載文件的方法

編輯:關於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程序設計有所幫助。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved