本发明专利申请是申请日为2016年7月8日、申请号为cn201610539738.4、名称为“一种数据处理方法和设备”的中国发明专利申请的分案申请。
本申请涉及计算机技术领域,尤其涉及一种数据处理方法和设备。
背景技术:
随着科学技术的发展,出现了各种各样功能不同的用户设备。这些用户设备可以通过图形用户界面(gui,graphicaluserinterface)方式向用户展现各种各样的信息。
具体地,针对某一个应用软件,该应用软件可以包含多个不同的信息展示页面。当用户启动该应用软件后,可以通过在不同信息展示页面之间进行切换进而有效获取不同信息展示页面中的信息。
然而,对于不同页面中包含的同一对象,在执行不同页面之间的切换操作时,需要保持该对象对应信息的一致性。
例如:某一个应用软件中的多个页面包含同一目标对象,当用户设备与页面服务器建立数据连接时,多个页面中包含的针对同一目标对象的信息应该是一致的。具体地,用户在其中一个页面中对目标对象进行数据更新操作后,页面服务器将同步更新其他页面中该目标对象对应的数据,使用户在由一个页面切换至另一个页面时,保证切换后该目标对象的页面内容与切换前该目标对象的页面内容一致。
但是在实际应用中发现,用户在不同页面之间执行切换操作时,由于网络环境变化,容易出现切换前包含同一对象的页面内容与切换后包含同一对象的页面内容出现不一致的情形。
即当用户设备与页面服务器之间数据连接建立失败时,在一个页面中对目标对象进行数据更新操作后,执行页面切换操作,容易出现切换后该目标对象的页面内容与切换前该目标对象的页面内容不一致的情形。
技术实现要素:
有鉴于此,本申请实施例提供一种数据处理方法和设备,用于解决现有技术中存在的切换后目标对象的页面内容与切换前该目标对象的页面内容不一致的问题。
本申请实施例提供一种数据处理方法,包括:
用户设备的本地数据资源池中存储有打开的第一页面的数据,所述第一页面包含与第二页面关联的更新数据;
所述用户设备接收从所述第一页面切换至所述第二页面的切换操作;
所述用户设备根据所述切换操作,打开所述第二页面,在所述第二页面中包含与所述第二页面关联的更新数据。
本申请实施例还提供一种数据处理设备,包括:
本地数据资源池,存储打开的第一页面的数据,所述第一页面包含与第二页面关联的更新数据;
接收单元,接收从所述第一页面切换至所述第二页面的切换操作;
处理单元,根据所述切换操作,打开所述第二页面,在所述第二页面中包含与所述第二页面关联的更新数据。
本申请实施例采用的上述至少一个技术方案能够达到以下有益效果:
用户设备的本地数据资源池中存储有打开的第一页面的数据,所述第一页面包含与第二页面关联的更新数据;接收从所述第一页面切换至所述第二页面的切换操作;并根据所述切换操作,打开所述第二页面,在所述第二页面中包含与所述第二页面关联的更新数据。这样,当用户设备在不同页面之间执行切换操作时,能够从本地数据资源池中获取与切换后页面相关的数据,使切换后的页面显示的数据与切换前的页面数据保持一致,有效地避免由网络环境发生变化导致的切换后目标对象的页面内容与切换前目标对象的页面内容不一致的问题,提升用户在执行页面切换操作时的用户体验。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本申请实施例提供的一种数据处理方法的流程示意图;
图2为本申请实施例提供的一种数据处理方法的流程示意图;
图3为本申请实施例提供的一种数据处理方法的流程示意图;
图4为本申请实施例提供的一种数据处理方法的场景示意图;
图5为本申请实施例提供的一种数据处理设备的结构示意图。
具体实施方式
为了实现本申请的目的,本申请实施例提供了一种数据处理方法和设备,当用户设备在不同页面之间执行切换操作时,能够从本地数据资源池中获取与切换后页面相关的数据,使切换后的页面显示的数据与切换前的页面数据保持一致,有效地避免由网络环境发生变化导致的切换后目标对象的页面内容与切换前目标对象的页面内容不一致的问题,提升用户在执行页面切换操作时的用户体验。
需要说明的是,本申请实施例中记载的本地资源池采用持久化存储方式,可以是指用户设备中缓存区域,也可以是指用户设备中的某一固定存储区域,还可以是指与用户设备相关的云存储区域,这里不做具体限定;这里本地资源池能够及时存储用户设备产生的更新数据,这里的更新数据可以是安装在用户设备中的某一个应用软件的更新数据,也可以是基于用户设备本身产生的更新数据,这里不做具体限定。
本申请实施例中所记载的用户设备可以为移动终端设备,例如:智能手机、平板电脑等;也可以是其他形式的终端设备,这里不做具体限定。
下面结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
以下结合附图,详细说明本申请各实施例提供的技术方案。
实施例1
图1为本申请实施例提供的一种数据处理方法的流程示意图。所述方法可以如下所示。
步骤101:用户设备的本地数据资源池中存储有打开的第一页面的数据,所述第一页面包含与第二页面关联的更新数据。
在本申请实施例中,在用户设备本地配置一个数据资源池,在本申请实施例中可以称之为本地数据资源池。该本地数据资源池用于存储用户设备中不同应用产生的数据,包括打开的第一页面的数据。这里打开的第一页面可以是用户设备中任意一个应用处于运行状态时被打开的页面。
需要说明的是,所述第一页面中包含与第二页面关联的数据,该数据中包含随时间更新的数据,例如:会变动的账户余额、股票资讯、收益等数据。即第一页面与第二页面属于同一个应用的不同页面,第一页面与第二页面中包含关联数据。换句话说,假设用户对第一页面的数据执行更新操作,那么第二页面中包含的关联数据将需要同步进行更新,如果同步更新失败,将导致用户从第一页面切换至第二页面时,出现第一页面中的更新数据和第二页面中与该更新数据关联的数据不一致。
为了解决这一问题,本地数据资源池存储打开的不同页面的数据,包含更新后的数据。
具体地,所述用户设备对第一页面中的数据执行更新操作,产生与第二页面关联的更新数据;
所述用户设备在确定尚未与页面服务器建立数据连接时,将所述与第二页面关联的更新数据存储至本地数据资源池。
需要说明的是,本申请实施例中所记载的页面服务器可以是指不同应用分别对应的服务器,那么当用户在对应用中显示的内容执行更新操作时,将产生的更新数据发送至页面服务器,使得页面服务器根据接收到的更新数据对其存储的数据进行同步更新。但是,若此时用户所使用的用户设备尚未与页面服务器建立数据连接,那么将产生的更新数据存储至本地数据资源池中。
可选地,在本申请的另一个实施例中,所述方法还包括:
所述用户设备在确定与所述页面服务器建立数据连接时,向所述页面服务器发送数据更新请求,所述数据更新请求中包含与第二页面关联的更新数据。
需要说明的是,当用户在对应用中显示的内容执行更新操作时,对于产生的更新数据,可以忽略用户设备是否与页面服务器建立数据连接,直接将产生的更新数据存储至本地数据资源池中。之后,确定是否与页面服务器建立数据连接,当确定与页面服务器建立数据连接时,向所述页面服务器发送数据更新请求,所述数据更新请求中包含产生的更新数据。
例如:用户设备在接收到用户发送的启动指令时,启动所述启动指令中携带的应用软件标识对应的应用软件,并加载该应用软件对应的应用数据。
在现有技术中,若用户设备确定与应用软件服务器建立数据连接,那么用户设备向应用软件服务器发送应用数据加载请求,并在接收到应用软件服务器发送的加载响应消息时,根据该加载响应消息中包含的应用数据完成应用软件的数据加载。
针对加载完成的应用软件的页面,用户设备可以通过接收到的用户发送的页面切换指令,在应用软件的不同页面之间执行切换操作。
在实际应用中,当用户设备完成加载并展示应用软件的页面时,使用该用户设备的用户可以根据用户需要修改页面中的部分应用数据,例如:修改应用软件的背景画面。若此时用户设备与应用软件服务器之间建立数据连接,则用户设备可以将修改后的与背景画面相关的数据发送至应用软件服务器,使得该用户所使用的应用软件的背景画面完成更新,即用户在从该应用软件的一个页面切换至另一个页面时,保证每一个页面的背景画面相一致。
但是,若此时用户设备所处位置的网络环境发生变化,导致用户设备与应用软件服务器之间建立数据连接失败,则用户在对应用软件的背景画面进行修改后,可能仅处于修改中的页面的背景画面为更新后的数据,一旦用户执行页面切换操作,将导致切换后的页面的背景画面与切换前页面的背景画面不一致。
由此可见,本申请实施例中所记载的用户设备接收用户发送的页面切换指令可以是在用户对切换前的页面进行数据更新之后发送的,也可以是在用户尚未对切换前的页面进行数据更新,即正常情况下的页面切换指令。
假设用户设备接收用户发送的页面切换指令是用户在对切换前的页面进行数据更新之后发送给用户设备的,那么用户设备在接收到页面切换指令之前,接收用户发送的页面更新指令,该页面更新指令中包含待更新的页面标识和更新数据。
此时,用户设备根据该页面更新指令中包含的更新数据,对待更新的页面标识对应的页面(这里可以将该页面称之为第一页面)执行更新操作。
用户设备在对第一页面执行更新操作时,可以执行包括但不限于以下几种操作:
第一种操作:
向页面服务器(这里的页面服务器与前面记载的应用软件服务器相同)发送数据更新指令,该数据更新指令中包含第一页面的标识信息和更新数据。
第二种操作:
将第一页面的标识信息和更新数据存储至本地数据资源池中。
此外,用户设备在对第一页面执行更新操作时,所述方法还可以包括:
用户设备判断是否与页面服务器之间建立数据连接;
若判断结果是建立数据连接,则用户设备可以同时执行上述记载的至少一种操作。
此时,用户设备在对第一页面执行更新操作时,若用户设备与页面服务器建立数据连接,则向页面服务器发送更新指令与将第一页面的标识信息和更新数据存储至本地资源池中这两个操作可以同时执行,也可以不同时执行,至于是先执行“向页面服务器发送更新指令”操作后执行“将第一页面的标识信息和更新数据存储至本地数据资源池中”操作,还是先执行“将第一页面的标识信息和更新数据存储至本地数据资源池中”操作后执行“向页面服务器发送更新指令”操作,在本申请实施例中不做具体限定。
若判断结果是尚未建立数据连接,则用户设备执行第二种操作。
此时,用户设备在对第一页面执行更新操作时,若用户设备尚未与页面服务器建立数据连接,则将更新数据存储至本地数据资源池中。之后,当用户设备与页面服务器建立数据连接时,即当用户设备与页面服务器之间的连接关系由尚未建立数据连接或数据连接建立失败转换为数据连接建立成功时,用户设备将本地资源池中的更新数据携带在更新消息中发送给页面服务器中,以实现页面服务器与本地数据资源池中的数据同步。
本申请实施例中所记载的本地数据资源池,作为一个数据存储区域,采用持久化存储方式,实现用户设备对本地数据资源池中的数据执行写数据和/或读数据操作。
需要说明的是,本申请实施例中所记载的用户设备接收用户发送的页面切换指令是用户在对切换前的页面进行数据更新之后发送给用户设备的,可以理解为用户在对第一页面进行数据更新之后随即向用户设备发送页面切换指令;也可以理解为用户在对第一页面进行数据更新之后的设定时间周期内向用户设备发送页面切换指令;还可以理解为用户在对第一页面进行数据更新之后的任意时间向用户设备发送页面切换指令,这里对于用户设备接收用户发送的页面切换指令的时间与切换前页面发生更新的时间之间的关系不做具体限定。
本申请实施例中所记载的页面更新指令包括但不限于修改页面数据、删除页面数据和新增页面数据等。
需要说明的是,本申请实施例中所记载的“第一页面”和“第二页面”中记载的“第一”和“第二”,没有特殊含义,仅仅用来区分不同页面。
步骤102:所述用户设备接收从所述第一页面切换至所述第二页面的切换操作。
在本申请实施例中,这里的切换操作可以是指用户在对第一页面进行数据更新之后触发第一页面中的切换控件发起的页面切换指令,这里不做具体限定。
可选地,在本申请的另一个实施例中,在所述用户设备接收从所述第一页面切换至所述第二页面的切换操作之前,所述方法还包括:
更新所述本地数据资源池中的所述第一页面的数据,更新后的所述第一页面的数据中包含与所述第二页面关联的更新数据。
步骤103:所述用户设备根据所述切换操作,打开所述第二页面,在所述第二页面中包含与所述第二页面关联的更新数据。
在本申请实施例中,所述用户设备在获取到所述切换操作时,确定与所述第二页面关联的数据(这里包含与所述第二页面关联的更新数据)。在本申请实施例中确定与所述第二页面关联的数据的方式包括但不限于:
第一种方式:从本地数据资源池中获取与第二页面相关联的数据(这里包含与所述第二页面关联的更新数据)。
第二种方式:从页面服务器中获取与第二页面相关联的数据。
具体地,用户设备在执行从第一页面切换至第二页面时,可以先判断用户设备是否与页面服务器建立数据连接,再从本地数据资源池中获取与第二页面相关联的数据;也可以先直接从本地数据资源池中获取与第二页面相关联的数据,再判断用户设备是否与页面服务器建立数据连接,这里不做具体限定。
假设用户设备先判断是否与页面服务器之间建立数据连接,再从本地数据资源池中获取与第二页面相关联的数据。
具体地,用户设备在执行从第一页面切换至第二页面时,第一步,判断是否与页面服务器建立数据连接,若否,则执行第二步;若是,则执行第三步。
具体地,用户设备判断是否与页面服务器之间建立数据连接的方式包括但不限于:
用户设备向页面服务器发送连接确认数据包,该连接确认数据包用于确定用户设备是否与页面服务器建立数据连接;
若用户设备接收到页面服务器发送的响应数据包,则确定用户设备与页面服务器之间建立数据连接;
若用户设备在设定时间周期内尚未接收到页面服务器发送的响应数据包,则确定用户设备与页面服务器之间数据连接建立失败或者尚未建立数据连接。
此外,用户设备还可以通过检测数据连接控件的状态,若数据连接控件的状态为关闭状态,则确定用户设备与页面服务器之间尚未建立数据连接;若数据连接控件的状态为开启状态,则进一步确定是否与页面服务器之间存在下行数据,若存在下行数据,则确定用户设备与页面服务器之间建立数据连接;若不存在下行数据,则确定用户设备与页面服务器之间数据连接建立失败。
第二步,用户设备在确定与页面服务器之间不存在数据连接时,直接从本地数据资源池中获取与第二页面关联的数据。
这里需要说明的是,本申请实施例中所记载的第一页面与第二页面之间存在关联关系,例如:针对卡管理业务,包含卡列表页面和单卡详情页面,其中,卡列表页面这里可以称之为第一页面,单卡详情页面这里可以称之为第二页面。
那么当用户设备接收到用户发送的第一页面的数据更新请求时,该数据更新请求中包含用户对第一页面中的数据内容进行修改后的更新数据,例如:对卡列表页面中的卡信息进行修改,那么修改后的卡信息将对单卡详情页面产生影响,所以与第二页面关联的数据中包含第一页面的更新数据,即包含更新后的卡信息,这样,在单卡详情页面才可以查看到修改后的卡信息对应的内容。
需要说明的是,本申请实施例中所记载的数据的生成时间和数据的版本号,是从应用软件代码中的一个数据资源项的抽象数据结构中获取的,数据的生成时间即数据发生变化的时间。
其中,所述数据资源项的抽象数据结构包含数据资源身份(id)、数据体、更新时间戳、版本号。所述数据体,代表的是数据内容,用于表示用户设备中的不同页面中显示的信息;所述更新时间戳,是一个经过加密处理形成的凭证文档,用于确定所述数据体的更新时间;所述版本号,由所述页面服务器控制,通过数据版本的升级实现所述页面服务器对数据的订正或者数据内容的重构。
由于本申请实施例中的本地数据资源池采用持久化存储方式,当用户设备接收到用户发送的数据更新请求时,需要对数据更新请求中包含的待更新数据进行检验,进而确定是否将待更新数据更新至本地数据资源池。具体步骤如下:
首先,判断该数据更新请求中包含的待更新数据的数据内容是否有效,若有效则执行下一步;若无效,则确定不将待更新数据更新至本地数据资源池。
这里可以通过判断数据内容的格式是否满足设定要求进行判断,还可以通过其他方式进行判断,这里不做具体限定。
其次,确定本地数据资源池中是否存在该数据更新请求中包含的待更新数据的数据标识,若不存在,则直接将待更新数据存储至本地数据资源池;若存在,则执行下一步。
最后,确定该数据更新请求中包含的待更新数据的更新时间,并将更新时间与本地数据资源池中该数据标识对应的数据内容的生成时间进行比较;若更新时间早于生成时间,则确定不将待更新数据更新至本地数据资源池;若更新数据晚于生成时间,则将待更新数据存储至本地数据资源池,以更新本地数据资源池中该数据标识对应的数据内容。
可选地,本地数据资源池在对存储的数据内容进行更新后,通过广播的方式发送更新消息。
具体地,用户设备接收本地数据资源池发送的更新消息,从所述更新消息中读取更新后的与第二页面关联的数据,以保证在执行切换操作之后,打开的第二页面中显示的数据中包含第一页面的更新数据。
需要说明的是,本地资源池在接收到第一页面的更新数据后,可以通过广播的方式发送更新消息。
第三步,用户设备在确定与页面服务器之间建立数据连接时,从页面服务器获取与第二页面关联的数据。同时,还可以从本地数据资源池获取与第二页面关联的更新数据。
其中,用户设备在从页面服务器中获取与第二页面关联的数据时,可以先向页面服务器发送页面数据获取请求,然后接收由页面服务器发送的页面数据响应信息。
需要说明的是,所述页面数据获取请求中包含第二页面的地址信息,所述页面响应信息中包含与第二页面相关联的数据。
用户设备可以先从页面服务器中获取与第二页面关联的数据,再从本地数据资源池中获取与第二页面关联的更新数据,也可以先从本地数据资源池中获取与第二页面关联的更新数据,再从页面服务器中获取与第二页面关联的数据,这里不做具体限定。
第四步,判断本地数据资源池中与第二页面关联的更新数据与页面服务器中与第二页面关联的数据是否一致。
用户设备在判断本地数据资源池中与第二页面关联的更新数据与页面服务器中与第二页面关联的数据是否一致时,可以执行包括但不限于以下几种方式:
(1)方式一:判断本地数据资源池中与第二页面关联的更新数据的第一生成时间与页面服务器中与第二页面关联的数据的第二生成时间是否一致。
如果一致,则执行方式二的操作;如果不一致,则确定本地数据资源池中与第二页面关联的更新数据与页面服务器中与第二页面关联的数据不一致。
(2)方式二:判断本地数据资源池中与第二页面关联的更新数据的第一版本号与页面服务器中与第二页面关联的数据的第二版本号是否一致。
如果一致,则确定本地数据资源池中与第二页面关联的更新数据与页面服务器中与第二页面关联的数据一致,直接从本地数据资源池中获取与第二页面关联的更新数据;如果不一致,则确定本地数据资源池中与第二页面关联的更新数据与页面服务器中与第二页面关联的数据不一致。
需要说明的是,当本地数据资源池中的与第二页面关联的更新数据和从页面服务器获取到的与第二页面关联的数据一致时,还可以从页面服务器中直接获取与第二页面关联的数据,这里不做具体限定。
第五步,用户设备在确定本地数据资源池中与第二页面关联的更新数据与页面服务器中与第二页面关联的数据不一致之后,可以执行包括但不限于以下几种操作:
第一种操作,判断第一生成时间是否早于第二生成时间。
如果第一生成时间早于第二生成时间,说明页面服务器中存储的与第二页面关联的数据要比本地数据资源池中存储的与第二页面关联的更新数据的数据版本新,此时用户设备利用获取到的页面服务器中存储的与第二页面关联的数据更新本地数据资源池中与第二页面关联的更新数据。
可选地,本地数据资源池在利用获取到的页面服务器中存储的与第二页面关联的数据更新本地数据资源池中与第二页面关联的更新数据,可以通过广播方式发送更新消息,使得用户设备通过总线接收到该更新消息时,确定本地数据资源池中存储的更新后的与第二页面关联的更新数据与页面服务器中存储的与第二页面关联的数据一致。
如果第一生成时间晚于所述第二生成时间,说明页面服务器中存储的与第二页面关联的数据要比本地数据资源池中存储的与第二页面关联的更新数据的数据版本旧,用户设备将本地数据资源池中的与第二页面相关联的更新数据发送给页面服务器,以更新页面服务器中与第二页面关联的数据,使本地数据资源池中与第二页面关联的更新数据和页面服务器中更新后的与第二页面关联的数据保持一致。
第二种操作,判断第一版本号是否小于第二版本号。
如果第一版本号小于第二版本号,用户设备执行的操作与第一种操作中第一生成时间早于第二生成时间的情形相同,这里不再赘述。
如果第一版本号大于第二版本号,用户设备执行的操作与第一种操作中第一生成时间晚于第二生成时间的情形相同,这里不再赘述。
用户设备在确定本地数据资源池中与第二页面关联的更新数据与页面服务器中与第二页面关联的数据是否一致的方式可以利用数据的生成时间进行判断,还可以利用数据的版本号进行判断,还可以是生成时间与版本号结合进行判断,这里不做具体限定。
假设用户设备先从本地数据资源池中获取与第二页面关联的更新数据,再判断用户设备是否与页面服务器建立数据连接。
具体地,用户设备在接收到从所述第一页面切换至所述第二页面的切换操作时,首先,从本地数据资源池中获取与第二页面关联的更新数据。
用户设备在从本地数据资源池中获取与第二页面关联的更新数据的方式包括但不限于:
用户设备首先根据第二页面的标识信息确定第二页面中的数据在本地数据资源池中的存储区域,然后查找与第二页面关联的数据(这里的数据可以为最新版本的数据,包含与第二页面关联的更新数据),在查找到与第二页面关联的数据之后执行对本地数据资源池的读数据操作,实现对与第二页面关联的数据的获取。
然后,判断用户设备是否与页面服务器建立数据连接。
判断用户设备是否与页面服务器建立数据连接的操作步骤与第一种方式相同,这里不再赘述。
在获取到第二页面的数据时,加载获取到的数据,并在打开第二页面时,完成数据加载,在第二页面中显示获取到的数据,使得切换后的第二页面中与第一页面关联的数据与第一页面中与第二页面关联的更新数据一致。
通过本申请实施例提供的技术方案,当用户设备在不同页面之间执行切换操作时,能够从本地数据资源池中获取与切换后页面相关的数据,使切换后的页面显示的数据与切换前的页面数据保持一致,有效地避免由网络环境发生变化导致的切换后目标对象的页面内容与切换前目标对象的页面内容不一致的问题,提升用户在执行页面切换操作时的用户体验。
实施例2
图2为本申请实施例提供的一种数据处理方法的流程示意图,所述方法可以如下所示。
步骤201:接收用户发送的页面更新指令。
其中,所述页面更新指令包括但不限于修改页面数据、删除页面数据和增加页面数据等,这里的修改页面数据、删除页面数据以及增加页面数据可以称之为更新数据。
在步骤201中,用户在确定需要对访问的页面进行更新时,向用户设备发送页面更新指令。
步骤202:用户设备判断是否与页面服务器建立数据连接,若判断结果是尚未建立数据连接,则执行步骤203;若判断结果是建立数据连接,则执行步207。
步骤203:用户设备将所述页面更新指令中包含的更新数据存储至本地数据资源池。
在步骤203中,用户设备将所述页面更新指令中包含的更新数据存储至本地数据资源池的方式包括但不限于:
第一步,判断该数据更新请求中包含的待更新数据的数据内容是否有效,若有效则执行第二步;若无效,则确定不将待更新数据更新至本地数据资源池。
这里可以通过判断数据内容的格式是否满足设定要求进行判断,还可以通过其他方式进行判断,这里不做具体限定。
第二步,确定本地数据资源池中是否存在该数据更新请求中包含的待更新数据的数据标识,若不存在,则直接将待更新数据存储至本地数据资源池;若存在,则执行第三步。
第三步,确定该数据更新请求中包含的待更新数据的更新时间,并将更新时间与本地数据资源池中该数据标识对应的数据内容的生成时间进行比较;若更新时间早于生成时间,则确定不将待更新数据更新至本地数据资源池;若更新数据晚于生成时间,则将待更新数据存储至本地数据资源池,以更新本地数据资源池中该数据标识对应的数据内容。
步骤204:用户设备接收用户发送的页面切换指令,所述页面切换指令用于从所述第一页面切换至第二页面。
步骤205:用户设备从本地数据资源池中获取与所述第二页面相关联的数据。
步骤206:用户设备执行页面切换操作,并在所述第二页面中显示获取到的与所述第二页面相关联的数据。
步骤207:用户设备向页面服务器发送数据更新请求。
其中,用户设备向页面服务器发送的数据更新请求中包含待更新数据的数据标识和第一页面的标识信息。
需要说明的是,相同页面或者不同页面中同一目标对象的数据具有能够唯一确定身份的数据标识,无论需要更新本地数据资源池中的数据,还是更新页面服务器中的数据,都可以通过查找数据的数据标识,确定待更新数据。
其中,数据更新请求对应的数据结构(dataoperatecmd)是用户设备定义的一个数据结构,包含数据标识、更新标识、附属扩展数据。所述数据标识,用于对不同的数据进行区分;所述更新标识,包含delete(删除)、edit(编辑/设置)、create(新增),用于对数据实施的操作;所述附属扩展数据,不同的操作具有不同的扩展数据,例如:edit操作包含被修改的数据值key/value,create操作包含新增的数据值key/value。
具体地,页面服务器根据用户设备提交的数据更新请求(比如delete、edit、create)对与第一页面相关联的数据进行处理,并根据数据更新请求中包含的更新标识向用户设备返回数据更新指令,用户设备接收页面服务器发送的数据更新指令,采用逻辑重放的方式,实现用户设备对与第一页面相关联的数据的更新。
步骤208:用户设备接收页面服务器发送的数据同步指令,所述数据同步指令用于使所述用户设备的本地数据资源池中的数据与页面服务器中存储的数据一致。
在步骤208中,用户设备在接收到页面服务器发送的数据同步指令时,从所述数据同步指令中获取待同步的数据,这里待同步的数据可以是指与第一页面相关联的更新数据。
用户设备获取本地数据资源池中与所述第一页面相关联的数据,进一步判断本地数据资源池中存储的与所述第一页面相关联的数据与接收到页面服务器发送的与所述第一页面相关联的待同步的数据是否一致,这里判断一致的方式可以参见实施例1中步骤102中相关内容,这里不再赘述。
在确定本地数据资源池中的数据与页面服务器中存储的数据不一致时,可以采用实施例1中步骤102中相关方式进行数据同步,使所述用户设备的本地数据资源池中的数据与页面服务器中存储的数据一致。
可选地,在执行步骤207和步骤208时,用户设备还可以将待更新数据的数据标识和第一页面的标识信息发送给本地数据资源池,以使得本地数据资源池利用接收到待更新数据的数据标识和第一页面的标识信息对其存储的第一页面的数据进行更新,有效避免网络环境恶化情形下用户在发送页面切换指令使切换前的第一页面与切换后的第二页面显示内容不一致的问题。
步骤209:用户设备接收用户发送的页面切换指令,所述页面切换指令用于从所述第一页面切换至第二页面。
需要说明的是,步骤204中涉及的页面切换指令和步骤209中的页面切换指令可以是同一个页面切换指令,那么在不同应用场景或者网络环境中所执行的后续操作不同;也可以是不同的页面切换指令,这里不做限定。
步骤210:用户设备再次判断是否与页面服务器建立数据连接,若判断结果是建立数据连接,则执行步211;若判断结果是尚未建立数据连接,则执行步骤205。
步骤211:用户设备向页面服务器或者本地数据资源池发送页面切换请求,所述页面切换请求中包含第二页面的标识信息。
步骤212:用户设备接收页面服务器或者本地数据资源池发送的与所述第二页面的标识信息对应的第二页面的相关联的数据,跳转执行步骤206。
实施例3
图3为本申请实施例提供的一种数据处理方法的流程示意图。所述方法可以如下所示。
步骤301:用户设备接收用户发送的页面切换指令,所述页面切换指令用于从所述第一页面切换至第二页面。
步骤302:用户设备判断与页面服务器之间是否存在数据连接,若存在,则执行步骤303;若不存在,则按照实施例2中步骤205~206中记载的内容执行后续操作。
步骤303:用户设备分别从页面服务器中获取与第二页面相关联的数据和从本地数据资源池中获取与第二页面相关联的数据。
步骤304:判断本地数据资源池中与第二页面相关联的数据与页面服务器中与第二页面相关联的数据是否一致,若一致,则按照实施例2中步骤205~206中记载的内容执行后续操作;若不一致,则执行步骤305。
步骤305:用户设备确定是否更新本地数据资源池中与第二页面相关联的数据,若更新,则执行步骤306。
在步骤305中确定是否更新本地数据资源池中与第二页面相关联的数据的方式可以采用实施例1中步骤102中的相关处理方式,这里不做具体限定。
步骤306:用户设备利用获取到的页面服务器中存储的与第二页面相关联的数据更新本地数据资源池中与第二页面相关联的数据。
步骤307:用户设备从本地数据资源池中获取与第二页面相关联的更新数据。
步骤308:用户设备执行页面切换操作,并在所述第二页面中显示获取到的与所述第二页面相关联的数据。
通过本申请实施例提供的技术方案,当用户设备在不同页面之间执行切换操作时,能够从本地数据资源池中获取与切换后页面相关的数据,使切换后的页面显示的数据与切换前的页面数据保持一致,有效地避免由网络环境发生变化导致的切换后目标对象的页面内容与切换前目标对象的页面内容不一致的问题,同时用户设备从本地数据资源池中获取数据,能够减少用户设备与页面服务器之间的数据传输,减少页面服务器的数据传输压力,节省页面服务器的系统资源消耗,进而提升用户在执行页面切换操作时的用户体验。
图4为本申请实施例提供的一种数据处理的场景示意图。
从图4中可以看出,当用户设备中打开的第一页面发生更新时,不管用户设备是否与页面服务器建立数据连接,在本申请实施例中,可以将第一页面的数据存储在本地数据资源池中,需要说明的是,发生更新后的第一页面数据中包含与第二页面关联的更新数据。当用户设备接收到从第一页面切换至第二页面的切换操作时,用户设备在与页面服务器之间尚未建立数据连接时,从本地数据资源池中获取与第二页面关联的更新数据,打开第二页面,将获取到的更新数据加载在第二页面中显示,保证第二页面中显示的数据与第一页面中显示的关联数据一致。用户在与页面服务器之间建立数据连接时,从页面服务器中获取与第二页面关联的数据,并通过判断页面服务器中获取的与第二页面关联的数据与本地数据资源池中获取的与第二页面关联的更新数据是否一致,在页面服务器与本地数据资源池之间执行数据更新操作,以保证本地数据资源池与页面服务器中存储的数据一致。
实施例4
图5为本申请实施例提供的一种数据处理设备结构示意图。所述数据处理的设备包括:本地数据资源池51、接收单元52、处理单元53,其中:
本地数据资源池51,存储打开的第一页面的数据,所述第一页面包含与第二页面关联的更新数据;
接收单元52,接收从所述第一页面切换至所述第二页面的切换操作;
处理单元53,根据所述切换操作,打开所述第二页面,在所述第二页面中包含与所述第二页面关联的更新数据。
在本申请的另一个实施例中,所述数据处理设备还包括:更新单元54,其中:
更新单元54,在接收从所述第一页面切换至所述第二页面的切换操作之前,更新所述本地数据资源池中的所述第一页面的数据,更新后的所述第一页面的数据中包含与所述第二页面关联的更新数据。
在本申请的另一个实施例中,所述处理单元53根据所述切换操作,打开所述第二页面,包括:
判断是否与页面服务器建立数据连接;
在确定与所述页面服务器没有建立数据连接时,从所述本地数据资源池中获取与所述第二页面关联的更新数据,并在打开所述第二页面时加载与所述第二页面关联的更新数据。
在本申请的另一个实施例中,所述处理单元53,在确定与所述页面服务器建立数据连接时,分别从所述页面服务器中获取与所述第二页面关联的数据和从所述本地数据资源池中获取与所述第二页面关联的更新数据;
在确定所述本地数据资源池中的与所述第二页面关联的更新数据和从所述页面服务器获取到的与所述第二页面关联的数据不一致时,分别确定所述本地数据资源池中的与所述第二页面关联的更新数据的第一生成时间,以及确定所述页面服务器中的与所述第二页面关联的数据的第二生成时间;
若所述第一生成时间早于所述第二生成时间,则更新所述本地数据资源池中与所述第二页面关联的更新数据,并从所述本地数据资源池中获取更新后的与所述第二页面关联的更新数据;
若所述第一生成时间晚于所述第二生成时间,则将所述本地数据资源池中的与所述第二页面关联的更新数据发送给所述页面服务器。
在本申请的另一个实施例中,所述处理单元53,在确定本地数据资源池中的与所述第二页面相关联的数据和从所述页面服务器获取到的与所述第二页面相关联的数据不一致时,分别确定本地数据资源池中的与所述第二页面相关联的数据的第一版本号,以及确定页面数据响应信息中包含的与所述第二页面相关联的数据的第二版本号;
若所述第一版本号小于所述第二版本号,则更新本地数据资源池中与所述第二页面相关联的数据;
若所述第一版本号大于所述第二版本号,则将本地数据资源池中的与所述第二页面相关联的数据发送给所述页面服务器。
在本申请的另一个实施例中,所述处理单元53,在确定本地数据资源池中的与所述第二页面关联的更新数据和从所述页面服务器获取到的与所述第二页面关联的数据一致时,打开所述第二页面并加载与所述第二页面关联的更新数据。
在本申请的另一个实施例中,所述处理单元53从所述页面服务器中获取与所述第二页面关联的数据,包括:
向所述页面服务器发送页面数据获取请求,所述页面数据获取请求中包含所述第二页面的地址信息;
接收所述页面服务器发送的页面数据响应信息,所述页面数据响应信息中包含与所述第二页面关联的数据。
在本申请的另一个实施例中,所述处理单元53从所述本地数据资源池中获取与所述第二页面关联的更新数据,包括:
接收所述本地资源池发送的更新消息,所述更新消息中包含与所述第二页面关联的更新数据;
从所述更新消息中读取与所述第二页面关联的更新数据。
在本申请的另一个实施例中,本地数据资源池51存储打开的第一页面的数据,所述第一页面包含与第二页面关联的更新数据,包括:
对第一页面中的数据执行更新操作,产生与第二页面关联的更新数据;
在确定尚未与页面服务器建立数据连接时,将所述与第二页面关联的更新数据存储至本地数据资源池。
在本申请的另一个实施例中,所述数据处理设备还包括:发送单元55,其中:
所述发送单元在确定与所述页面服务器建立数据连接时,向所述页面服务器发送数据更新请求,所述数据更新请求中包含与第二页面关联的更新数据。需要说明的是,本申请实施例中所记载的数据处理设备可以通过软件方式实现,也可以通过硬件方式实现,这里不做限定。通过本申请实施例提供的数据处理设备,能够在用户设备执行不同页面之间切换操作时,从本地数据资源池中获取与切换后页面相关的数据,使切换后的页面显示的数据与切换前的页面数据保持一致,有效地避免由网络环境发生变化导致的切换后目标对象的页面内容与切换前目标对象的页面内容不一致的问题,提升用户在执行页面切换操作时的用户体验。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flashram)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitorymedia),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。