一:不想开车了,直接进入看代码,本文章中所用环境位jsp+spring MVC(非MVC项目也可以使用)。
二:代码实例
2.1,jsp,页面事件
2.2 ,后台代码
// 模板下载
@RequestMapping("/downloadExcelTemplaet")
public void downloadExcelTemplet(HttpServletRequest request, HttpServletResponse response) throws Exception {
String path = request.getSession().getServletContext().getRealPath("/");
//文件在项目的webapp 下面
String fileName="guest_template.xls"; ///sstf-manager/src/main/webapp/guest_template.xls
//设置响应头和客户端保存文件名
response.setCharacterEncoding("utf-8");
response.setContentType("multipart/form-data");
response.setHeader("Content-Disposition", "attachment;fileName="+fileName);
InputStream inputStream = null;
try {
//打开本地文件流
inputStream = new FileInputStream(path+fileName);
//激活下载操作
OutputStream os = response.getOutputStream();
//循环写入输出流
byte[] b = new byte[2048];
int length;
while ((length = inputStream.read(b)) > 0) {
os.write(b, 0, length);
}
os.close();
} catch (Exception e){
e.printStackTrace();
}finally {
if(inputStream!=null) inputStream.close();
}
}