解决web页面的同步问题

来源:互联网 发布:开票软件重装恢复数据 编辑:程序博客网 时间:2024/04/28 06:20
        在项目开发过程中,遇见过这样的情况:对一个机构的数据进行提数,对于提过的不能重复再提。在实际使用过程中,发现以下两个问题。
        第一:同一用户对同一笔数据重复提了两次;
        第二:不同的用户对同一笔数据提了两次;
        分析原因,第一情况是因为,同一用户,在点击提数时,连续点击了两次,由于数据量比较大,在第一批数据还没有生成轨迹时,提数了这批数据。第二个问题,类似第一个,两个用户同时操作,是由于数据量大,使得在生成轨迹和抽取数据时发生时间差,而重复抽取数据。
        解决思路,
        第一个,点击“提数”后就将其制灰;
       第二个,在提数的逻辑处理类中,加一个arraylist的static变量,保存正在提数的机构。每一个机构进来提数时,首先判断arraylist中是否存在这个机构正在提数,若存在,就等待,若不存在,就加入到队列后进行提数。当提数完成后从arraylist中删除这个机构。
 
原创粉丝点击