web项目的上传(导入)、下载(导出)

来源:互联网 发布:mac电脑如何强制关机 编辑:程序博客网 时间:2024/06/02 06:08

       一般web项目中都具有上传(导入)、下载(导出)的基本功能。下面谈谈我的实现思路,以及需要注意的地方。

1.上传(导入)

一般是首先通过查询取得一个多记录的数据集合,点<导入>按钮打开导入界面窗口,如下图,在其中输入需要导入的事先按一定格式输入的外部文件(如:exl、txt等文件),点确定,调用后台处理将文件内容数据对应导入到数据库表中存储,或者将文件上传到服务器保存起来。

导入界面的html脚本如下:

                                                      
<form id="importForm" enctype="multipart/form-data" method="post" action="<%=path%>/emp/importEmployeeInfo.do" > <!--注意:此处红字标识的属性必须设置,这样才能保证将表单中的附件数据作为二进制流传输,并通过相应程序解析其中的数据内容做相应的处理-->                                                                                                                                                                                                                                                                   
  <input type="file" id="uploadFile" name="uploadFile"><!--此处为一个文件输入的控件-->
</form>
<input type="button" value="确定" onclick="saveEmployee();">
<input type="button" value="取消" onclick="closeForm();">

点<确定>提交给后台的处理方法,这里不详细说了,我的作法提供参考如下:若需要导入数据库表,可以采用commons-fileupload-1.2.1.jar对提交的请求流解析取出相应信息,再使用poi-3.6-20091214.jar提供的一些api函数读取相应格式文件(如exl文件),再调用持久化数据库表的方法处理即可。

2.下载(导出)

一般是首先通过查询取得一个多记录的数据集合,点<导出>按钮后弹出浏览器的下载文件界面,如下图,点确定,调用后台处理将查询数据导出生成指定文件。

 

导出调用的后台程序,不做详细说明,提供参考的方法,即得到查询数据集,再使用poi-3.6-20091214.jar提供的一些api函数写入相应格式的文件(如exl文件)。

需要注意的是后台程序返回给前端的响应response中需要做特殊处理,才能触发浏览器弹出下载窗口,如下:

一般web项目中都具有上传(导入)、下载(导出)的基本功能。下面谈谈我的实现思路,以及需要注意的地方。

1.上传(导入)

一般是首先通过查询取得一个多记录的数据集合,点<导入>按钮打开导入界面窗口,如下图,在其中输入需要导入的事先按一定格式输入的外部文件(如:exl、txt等文件),点确定,调用后台处理将文件内容数据对应导入到数据库表中存储,或者将文件上传到服务器保存起来。

导入界面的html脚本如下:

                                                      
<form id="importForm" enctype="multipart/form-data" method="post" action="<%=path%>/emp/importEmployeeInfo.do" > <!--注意:此处红字标识的属性必须设置,这样才能保证将表单中的附件数据作为二进制流传输,并通过相应程序解析其中的数据内容做相应的处理-->                                                                                                                                                                                                                                                                   
  <input type="file" id="uploadFile" name="uploadFile"><!--此处为一个文件输入的控件-->
</form>
<input type="button" value="确定" onclick="saveEmployee();">
<input type="button" value="取消" onclick="closeForm();">

点<确定>提交给后台的处理方法,这里不详细说了,我的作法提供参考如下:若需要导入数据库表,可以采用commons-fileupload-1.2.1.jar对提交的请求流解析取出相应信息,再使用poi-3.6-20091214.jar提供的一些api函数读取相应格式文件(如exl文件),再调用持久化数据库表的方法处理即可。

2.下载(导出)

一般是首先通过查询取得一个多记录的数据集合,点<导出>按钮后弹出浏览器的下载文件界面,如下图,点确定,调用后台处理将查询数据导出生成指定文件。

 

导出调用的后台程序,不做详细说明,提供参考的方法,即得到查询数据集,再使用poi-3.6-20091214.jar提供的一些api函数写入相应格式的文件(如exl文件)。

需要注意的是后台程序返回给前端的响应response中需要做特殊处理,才能触发浏览器弹出下载窗口,如下:

public void exportData(HttpServletRequest request, HttpServletResponse response){                                                                                                                                                                                                                             

  String fileName = "userInfo.xls"; 

  OutputStream os = response.getOutputStream();
   response.setHeader("Content-disposition",  "attachment; filename=" + new String(fileName));
   response.setContentType("application/msexcel");

//  查询取得数据集

//调用poi组件api方法将数据集转换成响应流写入到指定的文件中。

}

 

 

原创粉丝点击