欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

jsp 文件下载示例代码

程序员文章站 2023-01-03 23:43:14
有的时候一个模板的下载,这种简单的下载服务端已存在文件功能,就可以方便的通过jsp文件下载的方式来轻松实现。  //jsp 页面 js 复制代码 代码如下: /*...
有的时候一个模板的下载,这种简单的下载服务端已存在文件功能,就可以方便的通过jsp文件下载的方式来轻松实现。
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("下载文件失败!");
}

%>