想在jfinal中使用多线程,请大神指点下思路

如题,目前有一个10万条左右数据量的excel 文件导出,因为数据结构复杂,还要根据用户条件筛选,生成文件时间会较长,为了避免浏览器超时,同时显示导出进度,考虑用多线程来处理。烦请大神指点一下@JFinal

评论区

beastxiao

2016-12-28 16:48

按你的思路,你是打算生成一个文件,生成好后再让用户下载,1.用户下载请求到达后台,你开新线程去处理,然后返回状态值,页面开始显示进度条。2.页面轮询后台的一个方法,显示进度。3.问题在于你怎么知道进度?这就要看第一步新开的线程需要set一个进度的值,然后你新的请求能访问到该值,一般放在session就好了

JFinal

2016-12-28 19:49

这类在浏览器中执行时间长的请求,可以用 ajax 发请求,然后马上定期再访问服务端处理状态,服务端处理过程中如果有状态请求过来,只要正确响应状态即可,处理完成就显示完成的状态

多线程无法从根本上解决这个问题

hulin729

2019-03-27 10:08

哈哈

热门反馈

扫码入社