java实时百分比进度条_Java 进度条百分比简单算法,根据数据量计算
1. 先把數(shù)據(jù)計算生成百分比
public JsonResult add(@Validated(ValidateConfig.ADD.class)SecKillDevice secKillDevice, HttpServletRequest request)
{
//首先循環(huán) 獲取當(dāng)前選取的商家list
for (int m = 0;m <= merchantList.size()-1; m++){
//計算百分比 商家數(shù) / ((商家總數(shù)-1)* 100%) = 進(jìn)度條的百分比 減一是因為m從0開始計算
Double aDouble = m/((merchantList.size()-1) * 0.01);
int intValue=aDouble.intValue();
Integer bfb=Integer.valueOf(intValue);
//將進(jìn)度值存儲到session中
request.getSession().setAttribute("processValue", bfb);
}
return new JsonResult().success("success");
}
2.?從session將執(zhí)行進(jìn)度值取出來并返回給用戶
1秒請求一次
public Object getProcess(HttpServletRequest request) {
//從session將執(zhí)行進(jìn)度值取出來并返回給用戶
Object obj = request.getSession().getAttribute("processValue");
return obj;
}
3.前端頁面,為了關(guān)閉添加頁面以后繼續(xù)可以保存進(jìn)度條進(jìn)度,所以在后面加了判斷,前端為 layui框架
//定義定時器
var timer;
//輪詢請求進(jìn)度數(shù)據(jù)
getProcessvalue:function(){
//1秒請求一次進(jìn)度條的數(shù)據(jù)
timer = setInterval(function () {
$.post('/ad/secKillDevice/getProcess.json',function(data){
$('.layui-progress').show(); //顯示進(jìn)度條
//更新進(jìn)度條
element.progress('demo', data+'%');
// 這個是列表頁面的判斷邏輯,因為為了加載頁面的時候,繼續(xù)保存進(jìn)度條的進(jìn)度
// 如果進(jìn)度條百分之百 或者 百分之0 不在調(diào)用后臺輪詢接口 關(guān)閉定時器, 隱藏進(jìn)度條
if (data == 0 || data == 100){
//清空定時器
clearInterval(timer);
$('.layui-progress').hide();
return;
}
});
}, 1000);
},
僅供參考!!
總結(jié)
以上是生活随笔為你收集整理的java实时百分比进度条_Java 进度条百分比简单算法,根据数据量计算的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java零基础到精通全套视频教程
- 下一篇: java美元兑换,(Java实现) 美元