一个用Excel文档导入数据的操作,需要显示导入时候的进度百分比。
这个该如何实现呢?
比如:我Excel中有100条数据,如果导入数据库中一条数据,那么在导入进行的时候显示1%。
领导给的思路是,将导入的数据保存到一个表里,然后Ajax不停的进行读取。
可是这个思路不知道该如何实现,也不知道该如何查,这个Ajax轮询可以做吗?Ajax轮询是什么?
还请大家多多指点!
谢谢大家!
后台:xls 文件处理逻辑
public Map updateFile(){
map= new hashmap();
int count = xls.count();
for(int i=0;i<count;i++){
//处理每一条数据
session.setAttribute("上传进度百分比",(int)((i+1+0.0)/count*100));
}
return map;
}
后台:/abc/a
public Map getJd(){
map = new hashmap();
map.put("data",session.getAttribute("上传进度百分比"));
return map;
}
前台js:
var id = setInterval(function(){
$.post('/abc/a',function(d){
//d是json:返回0-100的数字
var data=d.data;
进度条对象.set进度(data);
if(data==100){
进度条对象.close();
clearInterval(id);
}
});
},500);
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。