jsp 文件下载

访客 阅读:188 2022-03-07 15:15:34 评论:0

有的时候一个模板的下载,这种简单的下载服务端已存在文件功能,就可以方便的通过jsp文件下载的方式来轻松实现。


//jsp 页面 js

/** 
 * 导出角色 
 */ 
function exportRole(){ 
	 var user_id = $('input[name=userListRadio]:checked').attr('id'); 
	 if(!user_id ||user_id == ''){ 
		 showinfo('请选择用户!'); 
		 return; 
	 } 
	 var param = {}; 
	 param.home_city = $('#query_role_region1').combobox('getValue'); 
	 param.home_county = $('#query_role_region2').combobox('getValue'); 
	 param.role_id = $('#query_role_id').val(); 
	 param.role_name = $('#query_role_name').val(); 
	 param.user_id = user_id; 
	 param.is_export = "true"; 
	  $('#maskDiv').mask({ 
		  maskMsg:'正在导出...请稍后...' 
	  }); 
	 window.location.href = 'pri_user_grant_exportRole.jsf?'+$.param(param); 
}


//jsp下载页面

<%@page import="java.io.OutputStream"%> 
<%@page import="java.io.PrintWriter"%> 
<%@page import="java.io.FileNotFoundException"%> 
<%@page import="java.io.File"%> 
<%@page import="java.io.FileInputStream"%> 
<%@ page contentType="text/html; charset=gb2312"%> 
<% 
//打开指定文件的流信息 
String fileName = "58918-2-import_template.xls"; 
String filepath = request.getRealPath("bassdqm/sqlcheck/template/"+fileName); 
System.out.println(filepath); 
FileInputStream fs = null; 
try { 
	fs = new FileInputStream(new File(filepath)); 
}catch(FileNotFoundException e) { 
	e.printStackTrace(); 
	return; 
} 
//设置响应头和保存文件名  
response.reset(); 
response.setContentType("application/vnd.ms-excel");  
response.setHeader("Content-Disposition", "inline; filename=\"" + fileName + "\""); 
//写出流信息 
int b = 0; 
try { 
	OutputStream ops = response.getOutputStream(); 
	while((b=fs.read())!=-1) { 
		ops.write(b); 
	} 
	fs.close(); 
	out.clear(); 
    out = pageContext.pushBody(); 
}catch(Exception e) { 
	e.printStackTrace(); 
	System.out.println("下载文件失败!"); 
} 
 
%>



标签:JavaScript
声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

搜索
排行榜
关注我们

一个IT知识分享的公众号