首页 / 专利库 / 电脑安全 / 补丁管理 / 补丁 / 数据同步方法及装置

数据同步方法及装置

阅读:104发布:2020-05-11

专利汇可以提供数据同步方法及装置专利检索,专利查询,专利分析的服务。并且本公开涉及数据同步方法及装置,所述方法包括:前端向后端发送第一指令,所述第一指令包括第一数据和针对所述第一数据的操作内容,所述第一数据为所述前端中的部分数据;所述第一指令用于使后端对所述第一数据进行操作得到第二数据;所述前端接收所述后端发送的响应于所述第一指令的第二指令,所述第二指令包括第二数据;所述前端根据所述第二指令中的第二数据更新所述第一数据。本公开 实施例 通过前端和后端之间的指令交互完成数据的更新,可以使得前端和后端的数据保持同步。第一数据为前端中的部分数据,可以节省资源,提高数据同步的效率。,下面是数据同步方法及装置专利的具体信息内容。

1.一种数据同步方法,其特征在于,所述方法包括:
前端向后端发送第一指令,所述第一指令包括第一数据和针对所述第一数据的操作内容,所述第一数据为所述前端中的部分数据;所述第一指令用于使后端对所述第一数据进行操作得到第二数据;
所述前端接收所述后端发送的响应于所述第一指令的第二指令,所述第二指令包括第二数据;
所述前端根据所述第二指令中的第二数据更新所述第一数据。
2.根据权利要求1所述的方法,其特征在于,所述前端根据所述第二指令中的第二数据更新所述第一数据,包括:
所述前端将所述第二指令中的所述第二数据与所述第一数据进行比对,当所述第二数据与所述第一数据不一致时,所述前端根据所述第一数据和所述第二数据生成操作补丁
所述前端执行所述操作补丁更新所述第一数据。
3.根据权利要求1所述的方法,其特征在于,所述前端根据所述第二指令中的第二数据更新所述第一数据,包括:
所述前端根据所述第二指令中的第二数据更新所述第一数据以及更新所述前端的显示页面。
4.根据权利要求1所述的方法,其特征在于,前端向后端发送第一指令,包括:
所述前端根据接收到的数据操作指令和数据提交规则,确定第一数据,所述数据提交规则包括数据操作指令和数据之间的对应关系;
所述前端根据所述第一数据和所述数据操作指令生成第一指令;
所述前端向所述后端发送所述第一指令。
5.根据权利要求1-4任一项所述的方法,其特征在于,前端向后端发送第一指令,包括:
所述前端将所述第一指令按照设定格式发送至所述后端。
6.根据权利要求1所述的方法,其特征在于,所述第一数据包括元数据,所述元数据包括默认值或校验规则数据。
7.一种数据同步方法,其特征在于,所述方法包括:
后端接收前端发送的第一指令,所述第一指令包括第一数据和针对所述第一数据的操作内容;
所述后端根据所述第一指令对所述第一数据进行操作得到第二数据;
所述后端根据所述第二数据生成第二指令;
所述后端将所述第二指令发送至所述前端,以使所述前端根据所述第二指令中的第二数据更新所述第一数据。
8.根据权利要求7所述的方法,其特征在于,所述后端将所述第二指令发送至所述前端,包括:
所述后端将所述第二指令按照设定格式发送至所述前端。
9.根据权利要求7所述的方法,其特征在于,所述后端可以采用以下实现方式中的任意一种:Nodejs、Java、Python。
10.一种数据同步装置,其特征在于,所述装置应用于前端,所述装置包括:
第一指令发送模,用于向后端发送第一指令,所述第一指令包括第一数据和针对所述第一数据的操作内容,所述第一数据为所述前端中的部分数据;所述第一指令用于使后端对所述第一数据进行操作得到第二数据;
第二指令接收模块,用于接收所述后端发送的响应于所述第一指令的第二指令,所述第二指令包括第二数据;
更新模块,用于根据所述第二指令中的第二数据更新所述第一数据。
11.根据权利要求10所述的装置,其特征在于,所述更新模块,包括:
比对子模块,用于将所述第二指令中的所述第二数据与所述第一数据进行比对;
补丁生成子模块,用于当所述第二数据与所述第一数据不一致时,根据所述第一数据和所述第二数据生成操作补丁;
更新子模块,用于执行所述操作补丁更新所述第一数据。
12.根据权利要求10所述的装置,其特征在于,所述更新模块,包括:
页面更新子模块,用于根据所述第二指令中的第二数据更新所述第一数据以及更新所述前端的显示页面。
13.根据权利要求10所述的装置,其特征在于,所述第一指令发送模块,包括:
第一数据确定子模块,用于根据接收到的数据操作指令和数据提交规则,确定第一数据,所述数据提交规则包括数据操作指令和数据之间的对应关系;
第一指令生成子模块,用于根据所述第一数据和所述数据操作指令生成第一指令;
第一指令发送子模块,用于向所述后端发送所述第一指令。
14.根据权利要求10-13任一项所述的装置,其特征在于,所述第一指令发送模块,包括:
第一格式发送子模块,用于将所述第一指令按照设定格式发送至所述后端。
15.根据权利要求10所述的装置,其特征在于,所述第一数据包括元数据,所述元数据包括默认值或校验规则数据。
16.一种数据同步装置,其特征在于,所述装置应用于后端,所述装置包括:
第一指令接收模块,用于接收前端发送的第一指令,所述第一指令包括第一数据和针对所述第一数据的操作内容;
第二数据获取模块,用于根据所述第一指令对所述第一数据进行操作得到第二数据;
第二指令生成模块,用于根据所述第二数据生成第二指令;
第二指令发送模块,用于将所述第二指令发送至所述前端,以使所述前端根据所述第二指令中的第二数据更新所述第一数据。
17.根据权利要求16所述的装置,其特征在于,所述第二指令发送模块,包括:
第二格式发送子模块,用于所述后端将所述第二指令按照设定格式发送至所述前端。
18.根据权利要求16所述的装置,其特征在于,所述后端可以采用以下实现方式中的任意一种:Nodejs、Java、Python。
19.一种数据同步装置,其特征在于,包括:
处理器;
用于存储处理器可执行指令的存储器
其中,所述处理器被配置为:执行权利要求1至9任一项所述的方法。
20.一种非易失性计算机可读存储介质,其上存储有计算机程序指令,其特征在于,所述计算机程序指令被处理器执行时实现权利要求1至9中任意一项所述的方法。

说明书全文

数据同步方法及装置

技术领域

[0001] 本公开涉及计算机技术领域,尤其涉及一种数据同步方法及装置。

背景技术

[0002] 为了提高软件的开发效率和前端、后端的协作效率,前后端分离越来越多地被应用在项目中。分离后的前端和后端之间通过写好的接口进行业务数据的交换。在业务复杂度较高的情况下,如果需要通过前端更改业务数据,需要改写前后端之间的业务接口代码,甚至需要改写前端和后端的全部代码才能实现业务数据的更改,前后端之间的数据同步效率低。发明内容
[0003] 有鉴于此,本公开提出了一种数据同步方法,用以解决前后端数据同步效率低的问题。
[0004] 根据本公开的一方面,提供了一种数据同步方法,所述方法包括:
[0005] 前端向后端发送第一指令,所述第一指令包括第一数据和针对所述第一数据的操作内容,所述第一数据为所述前端中的部分数据;所述第一指令用于使后端对所述第一数据进行操作得到第二数据;
[0006] 所述前端接收所述后端发送的响应于所述第一指令的第二指令,所述第二指令包括第二数据;
[0007] 所述前端根据所述第二指令中的第二数据更新所述第一数据。
[0008] 在一种可能的实现方式中,所述前端根据所述第二指令中的第二数据更新所述第一数据,包括:
[0009] 所述前端将所述第二指令中的所述第二数据与所述第一数据进行比对,当所述第二数据与所述第一数据不一致时,所述前端根据所述第一数据和所述第二数据生成操作补丁
[0010] 所述前端执行所述操作补丁更新所述第一数据。
[0011] 在一种可能的实现方式中,所述前端根据所述第二指令中的第二数据更新所述第一数据,包括:
[0012] 所述前端根据所述第二指令中的第二数据更新所述第一数据以及更新所述前端的显示页面。
[0013] 在一种可能的实现方式中,前端向后端发送第一指令,包括:
[0014] 所述前端根据接收到的数据操作指令和数据提交规则,确定第一数据,所述数据提交规则包括数据操作指令和数据之间的对应关系;
[0015] 所述前端根据所述第一数据和所述数据操作指令生成第一指令;
[0016] 所述前端向所述后端发送所述第一指令。
[0017] 在一种可能的实现方式中,前端向后端发送第一指令,包括:
[0018] 所述前端将所述第一指令按照设定格式发送至所述后端。
[0019] 在一种可能的实现方式中,所述第一数据包括元数据,所述元数据包括默认值或校验规则数据。
[0020] 根据本公开的一方面,提供了一种数据同步方法,所述方法包括:
[0021] 后端接收前端发送的第一指令,所述第一指令包括第一数据和针对所述第一数据的操作内容;
[0022] 所述后端根据所述第一指令对所述第一数据进行操作得到第二数据;
[0023] 所述后端根据所述第二数据生成第二指令;
[0024] 所述后端将所述第二指令发送至所述前端,以使所述前端根据所述第二指令中的第二数据更新所述第一数据。
[0025] 在一种可能的实现方式中,所述后端将所述第二指令发送至所述前端,包括:
[0026] 所述后端将所述第二指令按照设定格式发送至所述前端。
[0027] 在一种可能的实现方式中,所述后端可以采用以下实现方式中的任意一种:Nodejs、Java、Python。
[0028] 根据本公开的一方面,提供了一种数据同步装置,所述装置应用于前端,所述装置包括:
[0029] 第一指令发送模,用于向后端发送第一指令,所述第一指令包括第一数据和针对所述第一数据的操作内容,所述第一数据为所述前端中的部分数据;所述第一指令用于使后端对所述第一数据进行操作得到第二数据;
[0030] 第二指令接收模块,用于接收所述后端发送的响应于所述第一指令的第二指令,所述第二指令包括第二数据;
[0031] 更新模块,用于根据所述第二指令中的第二数据更新所述第一数据。
[0032] 在一种可能的实现方式中,所述更新模块,包括:
[0033] 比对子模块,用于将所述第二指令中的所述第二数据与所述第一数据进行比对;
[0034] 补丁生成子模块,用于当所述第二数据与所述第一数据不一致时,根据所述第一数据和所述第二数据生成操作补丁;
[0035] 更新子模块,用于执行所述操作补丁更新所述第一数据。
[0036] 在一种可能的实现方式中,所述更新模块,包括:
[0037] 页面更新子模块,用于根据所述第二指令中的第二数据更新所述第一数据以及更新所述前端的显示页面。
[0038] 在一种可能的实现方式中,所述第一指令发送模块,包括:
[0039] 第一数据确定子模块,用于根据接收到的数据操作指令和数据提交规则,确定第一数据,所述数据提交规则包括数据操作指令和数据之间的对应关系;
[0040] 第一指令生成子模块,用于根据所述第一数据和所述数据操作指令生成第一指令;
[0041] 第一指令发送子模块,用于向所述后端发送所述第一指令。
[0042] 在一种可能的实现方式中,所述第一指令发送模块,包括:
[0043] 第一格式发送子模块,用于将所述第一指令按照设定格式发送至所述后端。
[0044] 在一种可能的实现方式中,所述第一数据包括元数据,所述元数据包括默认值或校验规则数据。
[0045] 根据本公开的一方面,提供了一种数据同步装置,所述装置应用于后端,所述装置包括:
[0046] 第一指令接收模块,用于接收前端发送的第一指令,所述第一指令包括第一数据和针对所述第一数据的操作内容;
[0047] 第二数据获取模块,用于根据所述第一指令对所述第一数据进行操作得到第二数据;
[0048] 第二指令生成模块,用于根据所述第二数据生成第二指令;
[0049] 第二指令发送模块,用于将所述第二指令发送至所述前端,以使所述前端根据所述第二指令中的第二数据更新所述第一数据。
[0050] 在一种可能的实现方式中,所述第二指令发送模块,包括:
[0051] 第二格式发送子模块,用于所述后端将所述第二指令按照设定格式发送至所述前端。
[0052] 在一种可能的实现方式中,所述后端可以采用以下实现方式中的任意一种:Nodejs、Java、Python。
[0053] 根据本公开的一方面,提供了一种数据同步装置,包括:
[0054] 处理器;
[0055] 用于存储处理器可执行指令的存储器
[0056] 其中,所述处理器被配置为:实现上述任一项所述的方法。
[0057] 根据本公开的一方面,提供了一种非易失性计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现上述任一项所述的方法。
[0058] 在本公开实施例中,前端向后端发送第一指令,第一指令包括第一数据和针对所述第一数据的操作内容;前端接收后端发送的响应于第一指令的第二指令,所述第二指令包括第二数据;前端根据所述第二指令中的第二数据更新第一数据。前端通过向后端发送第一指令,接收响应于第一指令的第二指令,并根据第二指令中的第二数据更新第一数据。完成前端与后端的数据同步。通过前端和后端之间的指令交互完成数据的更新,可以使得前端和后端的数据保持同步。第一数据为前端中的部分数据,可以节省资源,提高数据同步的效率。
[0059] 根据下面参考附图对示例性实施例的详细说明,本公开的其它特征及方面将变得清楚。

附图说明

[0060] 包含在说明书中并且构成说明书的一部分的附图与说明书一起示出了本公开的示例性实施例、特征和方面,并且用于解释本公开的原理。
[0061] 图1示出根据本公开一实施例的数据同步方法的流程图
[0062] 图2示出根据本公开一实施例的数据同步方法的流程图;
[0063] 图3示出根据本公开一实施例的数据同步方法的流程图;
[0064] 图4示出根据本公开一实施例的数据同步方法的流程图;
[0065] 图5示出根据本公开一实施例的数据同步方法的流程图;
[0066] 图6示出根据本公开一实施例的数据同步方法的流程图;
[0067] 图7示出根据本公开一实施例的数据同步装置的框图
[0068] 图8示出根据本公开一实施例的数据同步装置的框图;
[0069] 图9是根据一示例性实施例示出的一种数据同步系统的框图
[0070] 图10是根据一示例性实施例示出的一种数据同步装置的框图;
[0071] 图11是根据一示例性实施例示出的一种数据同步装置的框图。

具体实施方式

[0072] 以下将参考附图详细说明本公开的各种示例性实施例、特征和方面。附图中相同的附图标记表示功能相同或相似的元件。尽管在附图中示出了实施例的各种方面,但是除非特别指出,不必按比例绘制附图。
[0073] 在这里专用的词“示例性”意为“用作例子、实施例或说明性”。这里作为“示例性”所说明的任何实施例不必解释为优于或好于其它实施例。
[0074] 另外,为了更好的说明本公开,在下文的具体实施方式中给出了众多的具体细节。本领域技术人员应当理解,没有某些具体细节,本公开同样可以实施。在一些实例中,对于本领域技术人员熟知的方法、手段、元件和电路未作详细描述,以便于凸显本公开的主旨。
[0075] 图1示出根据本公开一实施例的数据同步方法的流程图,如图1所示,所示数据同步方法包括:
[0076] 步骤S10,前端向后端发送第一指令,所述第一指令包括第一数据和针对所述第一数据的操作内容,所述第一数据为所述前端中的部分数据;所述第一指令用于使后端对所述第一数据进行操作得到第二数据。
[0077] 在一种可能的实现方式中,本实施例中的数据同步方法可以应用于前端。前端可以为设置在终端(包括个人电脑或移动终端)上的各种应用程序,后端可以为设置在服务器上的用于对前端的各种数据进行管理的系统。用户可以看到的或可以进行操作的是前端。前端可以包括Web前端等各种不同类型的前端。前端可以包括应用程序中用户能够看到页面的结构、页面的外观视觉表现,以及页面的交互实现等。与Web前端对应的可以是Web后端。后端可以用于保存、处理前端的业务数据,可以根据业务系统中存储的数据处理业务逻辑。
[0078] 在一种可能的实现方式中,用户可以在前端进行业务数据的管理。数据的管理可以包括对数据的增加、删除、修改或查询中的至少一种。当用户在前端进行数据管理时,前端与后端之间需要进行数据同步。例如,用户可以在报销系统的前端,对报销数据进行管理。用户可以在前端包括增加一条个人报销数据,个人报销数据可以包括报销金额、报销内容等。前端可以将用户增加的个人报销数据与后端的报销系统中的数据进行数据同步,以使后端能够将用户增加的个人报销数据同步至报销系统的存储器中,更新存储器中的系统报销数据,例如,后端可以在存储器中更新此用户相关的个人报销数据,以及更新包括用户所属的部的报销数据等。后端可以向前端发送更新后的个人报销数据,以使用户可以在前端看到更新后的个人报销数据。用户也可以在用于前端对个人注册信息等需要与后端进行同步的数据进行管理。本公开不限定前端与后端之间进行数据同步的数据内容。
[0079] 在一种可能的实现方式中,前端可以向后端发送第一指令。第一指令中可以包括前端需要同步至后端的第一数据。第一数据可以是前端中的部分数据。例如,前端中的数据可以包括用户的个人注册信息,个人注册信息可以包括:姓名、出生日期、用户名、密码、联系电话、注册邮箱、个人喜好信息等。当用户在前端对联系电话进行修改时,前端可以只将用户修改的联系电话的数据作为第一数据,而不需要将个人注册信息的整体作为第一数据。
[0080] 在一种可能的实现方式中,针对第一数据可以有不同的操作内容。可以对第一数据进行增加、删除、修改或查询中至少一种操作。第一指令中可以包括针对第一数据的操作内容,以使后端可以根据第一指令中携带的针对第一数据的操作内容,对第一数据进行操作。
[0081] 在一种可能的实现方式中,根据操作内容的不同,第一数据可以包括不同的数据。当操作内容为增加操作时,第一数据可以包括增加后的数据。当操作内容为删除时,第一数据可以包括删除前的数据。当操作内容为修改时,第一数据可以包括修改前的数据和修改后的数据。第一数据可以包括数据类型和数据的值,例如,第一数据可以包括:电话号码:
137xxxxxx。本公开对此不做限定。
[0082] 在一种可能的实现方式中,第一指令中可以包括多个第一数据,以及针对多个第一数据的多个操作内容。第一指令中也可以包括多个第一数据,以及针对多个第一数据的一个操作内容。
[0083] 步骤S20,所述前端接收所述后端发送的响应于所述第一指令的第二指令,所述第二指令包括第二数据。
[0084] 在一种可能的实现方式中,前端将第一指令发送至后端,后端可以解析第一指令,得到第一指令中的第一数据,以及针对第一数据的操作内容。后端可以根据第一指令中携带的针对第一数据的操作内容,对第一数据进行操作,生成第二数据。后端可以将第二数据更新至存储器中保存。后端可以根据第二数据生成第二指令,并将第二指令作为第一指令的响应指令,发送至前端。
[0085] 例如,前端发送的第一指令中为修改联系电话。后端可以将系统中保存的个人注册信息中的联系电话修改为第一指令中发送的联系电话,得到个人注册信息中的新的联系电话。后端可以将更新后的联系电话作为第二数据,并根据第二数据生成第二指令发送至前端。
[0086] 步骤S30,所述前端根据所述第二指令中的第二数据更新所述第一数据。
[0087] 在一种可能的实现方式中,前端可以在接收到的第二指令中解析得到第二数据,并根据第二数据更新第一数据。例如,前端可以根据后端发送的第二指令中的更新后的联系电话,对原联系电话进行更新。更新后,前端在进行个人注册信息的显示时,所显示的联系电话为更新后的联系电话。前端和后端完成了更新联系电话的数据同步。
[0088] 在本实施例中,前端向后端发送第一指令,第一指令包括第一数据和针对所述第一数据的操作内容;前端接收后端发送的响应于第一指令的第二指令,所述第二指令包括第二数据;前端根据所述第二指令中的第二数据更新第一数据。前端通过向后端发送第一指令,接收响应于第一指令的第二指令,并根据第二指令中的第二数据更新第一数据。完成前端与后端的数据同步。通过前端和后端之间的指令交互完成数据的更新,可以使得前端和后端的数据保持同步。第一数据为前端中的部分数据,可以节省资源,提高数据同步的效率。
[0089] 图2示出根据本公开一实施例的数据同步方法的流程图,如图2所示,所示数据同步方法中步骤S30,包括:
[0090] 步骤S31,所述前端将所述第二指令中的所述第二数据与所述第一数据进行比对,当所述第二数据与所述第一数据不一致时,所述前端根据所述第一数据和所述第二数据生成操作补丁。
[0091] 在一种可能的实现方式中,前端可以将解析第二指令得到的第二数据,与第一数据进行比对。当比对结果为第二数据与第一数据不一致时,前端可以根据第一数据和第二数据之间的差异生成操作补丁。前端可以执行操作补丁,将前端中的第一数据更新为第二数据。
[0092] 在一种可能的实现方式中,可以预设多个备选操作补丁,并建立数据的差异与备选操作补丁之间的对应关系。可以根据第一数据和第二数据之间的差异和建立的对应关系,在多个的备选操作补丁中确定与差异相关的备选操作补丁。可以根据第一数据和第二数据填写备选操作补丁中的操作数据,得到可以用于执行本次数据同步的操作补丁。本公开不限定操作补丁的具体实现方式。
[0093] 步骤S32,所述前端执行所述操作补丁更新所述第一数据。
[0094] 在一种可能的实现方式中,前端可以执行生成的操作补丁,前端操作补丁执行完毕,可以更新第一数据。
[0095] 在本实施例中,前端可以将第二指令中的第二数据与第一数据进行比对,当第二数据与第一数据不一致时,前端可以根据第一数据和第二数据生成操作补丁。前端执行所述操作补丁更新所述第一数据。通过数据比较及操作补丁,前端可以根据第二指令更新第一数据,数据同步的准确率高,执行效率高。
[0096] 图3示出根据本公开一实施例的数据同步方法的流程图,如图3所示,所示数据同步方法中步骤S30,包括:
[0097] 步骤S33,所述前端根据所述第二指令中的第二数据更新所述第一数据以及更新所述前端的显示页面。
[0098] 在一种可能的实现方式中,前端的显示页面可以用于显示数据,用户可以通过显示页面,直观地看到更新前和更新后的数据。例如,用户可以在前端的显示页面中查看个人注册信息中的联系电话,用户可以在前端修改个人注册信息中的联系电话,前端与后端完成数据同步后,前端可以在显示页面中显示用户更改后的联系电话。
[0099] 在本实施例中,前端可以根据第二数据更新第一数据,以及更新显示页面。显示页面的更新可以使得用户直观地看到更新前后的数据,提高用户的使用感受。
[0100] 图4示出根据本公开一实施例的数据同步方法的流程图,如图4所示,所示数据同步方法中步骤S10,包括:
[0101] 步骤S11,所述前端根据接收到的数据操作指令和数据提交规则,确定第一数据,所述数据提交规则包括数据操作指令和数据之间的对应关系。
[0102] 在一种可能的实现方式中,前端可以提供数据操作指令的选项,数据操作指令的选项可以包括不同指令的选项,也可以包括各指令中不同指令参数的选项。用户可以通过选择数据操作指令的选项,向前端发送数据操作指令。可以根据需求确定数据操作指令的指令内容和实现方式,本公开对此不做限定。
[0103] 在一种可能的实现方式中,可以根据前端中的数据和数据操作指令,预设数据提交规则。例如,数据提交规则可以包括:当数据操作指令为指令1(例如变更)时,获取与指令1相关的数据(例如变更前后的数据);当数据操作指令为指令2(例如删除)时,获取与指令2相关的数据(例如删除前的数据)等。
[0104] 在一种可能的实现方式中,前端可以根据接收到的用户发送的数据操作指令查找数据提交规则,确定与数据操作指令相关的数据作为第一数据。
[0105] 步骤S12,所述前端根据所述第一数据和所述数据操作指令生成第一指令。
[0106] 在一种可能的实现方式中,数据操作指令中可以包括操作内容。前端可以根据确定的第一数据,以及数据操作指令中的操作内容,生成第一指令。
[0107] 例如,前端接收到的数据操作指令3为:将联系电话由号码A修改为号码B。前端可以根据数据操作指令3获取更新前的联系电话的号码A以及号码B,并根据号码A、号码B和操作内容“修改”,生成第一指令。
[0108] 步骤S13,所述前端向所述后端发送所述第一指令。
[0109] 在一种可能的实现方式中,前端可以向后端发送第一指令,以使后端可以根据第一指令更新第一数据。
[0110] 在本实施例中,前端可以根据接收到的数据操作指令和数据提交规则,确定第一数据,前端可以根据第一数据和数据操作指令生成第一指令,并将第一指令发送至后端。数据操作指令和数据提交规则,使得前端能够根据用户的需求有针对性的进行数据的更新,使得前端后端之间的数据同步更有针对性,效率更高。
[0111] 图5示出根据本公开一实施例的数据同步方法的流程图,如图5所示,所示数据同步方法中步骤S10,包括:
[0112] 步骤S14,所述前端将所述第一指令按照设定格式发送至所述后端。
[0113] 在一种可能的实现方式中,可以按照设定格式发送第一指令。预设格式可以包括第一指令中第一数据及操作内容所在的字段、第一指令的实现语言等。可以根据需求、前端的实现方式以及后端的实现方式,确定预设格式。
[0114] 在本实施例中,前端将第一指令按照设定格式发送至后端。设定格式可以提高前端后端数据同步的适用范围及准确率。
[0115] 在一种可能的实现方式中,所述第一数据包括元数据,所述元数据包括默认值或校验规则数据。
[0116] 在一种可能的实现方式中,元数据可以为描述数据的数据。例如,元数据可以是描述数据属性的信息,用来支持如指示存储位置、历史数据、资源查找、文件记录等功能。
[0117] 在一种可能的实现方式中,元数据可以包括默认值。前端中的数据可以包括元数据中的默认值。例如,前端的个人注册信息中,可以包括姓名的默认值“张三”、出生日期的默认值“1900-00-00”等。用户可以直接使用元数据中的默认值。当用户需要对默认值进行修改时,可以将需要修改的默认值确定为第一数据,发送至后端。例如,可以将出生日期的默认值修改为用户的实际出生日期。
[0118] 在一种可能的实现方式中,元数据可以包括校验规则数据。例如,根据校验规则数据,对于出生日期的数据可以按照校验规则1进行校验,对于密码的数据可以按照校验规则2进行校验。可以将校验规则数据作为第一数据。前端和后端可以通过数据同步更新校验规则数据。
[0119] 在本实施例中,第一数据可以包括元数据。元数据可以包括默认值和校验规则数据。通过将元数据确定为第一数据,可以实现在前端和后端之间管理数据的元数据的更新。
[0120] 图6示出根据本公开一实施例的数据同步方法的流程图,如图6所示,所述方法应用于后端,所示数据同步方法,包括:
[0121] 步骤S100,后端接收前端发送的第一指令,所述第一指令包括第一数据和针对所述第一数据的操作内容。
[0122] 在一种可能的实现方式中,后端可以接收前端发送的第一指令。后端通过解析第一指令,得到前端需要进行更新的第一数据,以及针对第一数据的操作内容。第一指令中可以包括多个第一数据和/或多个操作指令。
[0123] 步骤S200,所述后端根据所述第一指令对所述第一数据进行操作得到第二数据。
[0124] 在一种可能的实现方式中,后端可以根据在第一指令中解析出的第一数据和操作内容,对第一数据进行操作得到第二数据。第二数据可以包括更新后的第一数据,也可以包括更新后的与第一数据相关的其它数据。例如,对于报销系统中的后端,接收到前端发送的第一指令C为增加一条用户A的个人报销信息,个人报销信息包括报销金额和报销内容。后端可以根据第一指令,在报销系统存储的报销数据中将用户A的个人报销金额,按照报销内容进行相关的财务数据的操作,例如,更新的用户A的总报销金额,用户A所在的部门的总报销金额、用户A的报销内容所在的财务条目的总金额等。更新后的用户A的总报销金额,用户A所在的部门的总报销金额和用户A的报销内容所在的财务条目的总金额,可以作为第二数据。
[0125] 步骤S300,所述后端根据所述第二数据生成第二指令。
[0126] 在一种可能的实现方式中,后端可以根据第二数据生成第二指令。第二数据中可以包括更新后的第一数据,也可以包括更新后的与第一数据相关的其它数据。第二数据中可以包括与前端显示相关的数据,也可以包括与前端显示无关的数据。例如,对于报销系统的前端和后端,用户A的前端可以显示用户A自身的报销总金额,可以不显示用户A所在的部门的报销总金额。第一指令C为增加一条用户A的报销信息,第二数据可以包括更新后的用户A的报销总金额和用户A所在的部门的报销总金额。
[0127] 在一种可能的实现方式中,后端可以根据与前端显示相关的第二数据生成第二指令。第二指令中可以不包括与前端显示无关的第二数据。例如,对于用户A的前端,后端生成的第二指令中可以包括更新后的用户A的报销总金额,可以不包括更新后的用户A所在的部门的报销总金额。
[0128] 步骤S400,所述后端将所述第二指令发送至所述前端,以使所述前端根据所述第二指令中的第二数据更新所述第一数据。
[0129] 在一种可能的实现方式中,所述后端可以将所述第二指令按照设定格式发送至所述前端。预设格式可以包括第二指令中第二数据所在的字段、第二指令的实现语言等。可以根据需求、前端的实现方式以及后端的实现方式,确定预设格式。第二指令的设定格式可以与第一指令的设定格式相同或不同。本公开对此不做限定。设定格式可以提高前端后端数据同步的适用范围及准确率。
[0130] 在本实施例中,后端可以根据接收到的第一指令生成第二指令,后端可以将第二指令发送至前端。以使前端根据第二指令更新第一数据。通过第一指令和第二指令之间的交互,可以根据用户通过前端发送的需求,在前端和后端之间完成数据同步,且数据同步的效率高,准确率高。
[0131] 在一种可能的实现方式中,所述后端可以采用以下实现方式中的任意一种:Nodejs、Java、Python。
[0132] 在一种可能的实现方式中,Node.js是基于Chrome V8引擎的JavaScript运行环境。Node.js使用了事件驱动、非阻塞式I/O的模型,轻量、高效。Java语言作为静态面向对象编程语言的代表,实现了面向对象理论,具有功能强大和简单易用的特征。Python是一种面向对象的程序设计语言。后端可以采用Nodejs、Java、Python中的任意一种实现方式。前端可以采用Web实现方式。第一指令和第二指令可以根据设定格式在前端和采用不同实现方式的后端之间传送。
[0133] 在本实施例中,后端可以采用Nodejs、Java、Python等实现方式中的任意一种。后端的不同实现方式可以提高数据同步的适用范围。
[0134] 图7示出根据本公开一实施例的数据同步装置的框图,如图7所示,所述装置应用于前端,所述装置包括:
[0135] 第一指令发送模块10,用于向后端发送第一指令,所述第一指令包括第一数据和针对所述第一数据的操作内容,所述第一数据为所述前端中的部分数据;所述第一指令用于使后端对所述第一数据进行操作得到第二数据;
[0136] 第二指令接收模块20,用于接收所述后端发送的响应于所述第一指令的第二指令,所述第二指令包括第二数据;
[0137] 更新模块30,用于根据所述第二指令中的第二数据更新所述第一数据。
[0138] 在一种可能的实现方式中,所述更新模块30,包括:
[0139] 比对子模块,用于将所述第二指令中的所述第二数据与所述第一数据进行比对;
[0140] 补丁生成子模块,用于当所述第二数据与所述第一数据不一致时,根据所述第一数据和所述第二数据生成操作补丁;
[0141] 更新子模块,用于执行所述操作补丁更新所述第一数据。
[0142] 在一种可能的实现方式中,所述更新模块30,包括:
[0143] 页面更新子模块,用于根据所述第二指令中的第二数据更新所述第一数据以及更新所述前端的显示页面。
[0144] 在一种可能的实现方式中,所述第一指令发送模块10,包括:
[0145] 第一数据确定子模块,用于根据接收到的数据操作指令和数据提交规则,确定第一数据,所述数据提交规则包括数据操作指令和数据之间的对应关系;
[0146] 第一指令生成子模块,用于根据所述第一数据和所述数据操作指令生成第一指令;
[0147] 第一指令发送子模块,用于向所述后端发送所述第一指令。
[0148] 在一种可能的实现方式中,所述第一指令发送模块10,包括:
[0149] 第一格式发送子模块,用于将所述第一指令按照设定格式发送至所述后端。
[0150] 在一种可能的实现方式中,所述第一数据包括元数据,所述元数据包括默认值或校验规则数据。
[0151] 图8示出根据本公开一实施例的数据同步装置的框图,如图8所示,所述装置应用于后端,所述装置包括:
[0152] 第一指令接收模块100,用于接收前端发送的第一指令,所述第一指令包括第一数据和针对所述第一数据的操作内容;
[0153] 第二数据获取模块200,用于根据所述第一指令对所述第一数据进行操作得到第二数据;
[0154] 第二指令生成模块300,用于根据所述第二数据生成第二指令;
[0155] 第二指令发送模块400,用于将所述第二指令发送至所述前端,以使所述前端根据所述第二指令中的第二数据更新所述第一数据。
[0156] 在一种可能的实现方式中,所述第二指令发送模块400,包括:
[0157] 第二格式发送子模块,用于所述后端将所述第二指令按照设定格式发送至所述前端。
[0158] 在一种可能的实现方式中,所述后端可以采用以下实现方式中的任意一种:Nodejs、Java、Python。
[0159] 图9是根据一示例性实施例示出的一种数据同步系统的框图,如图9所示,所述数据同步系统包括前端数据同步转置和后端数据同步装置,在数据同步系统中进行前端和后端的数据同步步骤可以包括:
[0160] 1、用户通过操作API(Application Programming Interface,应用程序编程接口)向前端数据同步装置发送数据操作指令。
[0161] 2、前端数据同步装置中的处理器,可以根据接收到的数据操作指令,和预设的数据提交规则,确定第一数据。可以根据数据操作指令确定针对第一指令的操作内容,可以根据第一数据和针对第一数据的操作内容生成第一指令。
[0162] 3、前端数据同步装置通过发送器将第一指令按照设定格式发送至后端数据同步装置中的处理器。
[0163] 4、后端数据同步装置中的处理器根据接收到的第一指令,解析得到第一指令中的第一数据,和针对第一数据的操作内容。处理器根据第一数据和针对第一数据的操作内容得到第二数据。根据第二数据生成第二指令。
[0164] 5、后端数据同步装置通过发送器将第二指令按照设定格式发送至前端数据同步装置中的差异比较器。
[0165] 6、前端数据同步装置中的差异比较器根据接收到的第二指令解析得到第二数据,并将第二数据与第一数据进行比对,确定第二数据和第一数据之间的差异。当差异比较器确定第二数据和第一数据之间有差异时,将差异发送至补丁应用器。
[0166] 7、前端数据同步装置中的补丁应用器根据接收到的差异生成操作补丁,并执行生成的操作补丁。
[0167] 8、前端数据同步装置中的补丁应用器执行操作补丁后,根据补丁的执行结果,更新前端页面。用户在前端页面中可以看到更改的数据。完成前端和后端之间的数据同步。
[0168] 图10是根据一示例性实施例示出的一种数据同步装置800的框图。例如,装置800可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。
[0169] 参照图10,装置800可以包括以下一个或多个组件:处理组件802,存储器804,电源组件806,多媒体组件808,音频组件810,输入/输出(I/O)的接口812,传感器组件814,以及通信组件816。
[0170] 处理组件802通常控制装置800的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件802可以包括一个或多个处理器820来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件802可以包括一个或多个模块,便于处理组件802和其他组件之间的交互。例如,处理组件802可以包括多媒体模块,以方便多媒体组件808和处理组件802之间的交互。
[0171] 存储器804被配置为存储各种类型的数据以支持在装置800的操作。这些数据的示例包括用于在装置800上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器804可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
[0172] 电源组件806为装置800的各种组件提供电。电源组件806可以包括电源管理系统,一个或多个电源,及其他与为装置800生成、管理和分配电力相关联的组件。
[0173] 多媒体组件808包括在所述装置800和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件808包括一个前置摄像头和/或后置摄像头。当装置800处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。
[0174] 音频组件810被配置为输出和/或输入音频信号。例如,音频组件810包括一个麦克(MIC),当装置800处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器804或经由通信组件816发送。在一些实施例中,音频组件810还包括一个扬声器,用于输出音频信号。
[0175] I/O接口812为处理组件802和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和定按钮。
[0176] 传感器组件814包括一个或多个传感器,用于为装置800提供各个方面的状态评估。例如,传感器组件814可以检测到装置800的打开/关闭状态,组件的相对定位,例如所述组件为装置800的显示器和小键盘,传感器组件814还可以检测装置800或装置800一个组件的位置改变,用户与装置800接触的存在或不存在,装置800方位或加速/减速和装置800的温度变化。传感器组件814可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件814还可以包括光传感器,如CMOS或CCD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件814还可以包括加速度传感器,陀螺仪传感器,磁传感器压力传感器或温度传感器。
[0177] 通信组件816被配置为便于装置800和其他设备之间有线或无线方式的通信。装置800可以接入基于通信标准的无线网络,如WiFi,2G或3G,或它们的组合。在一个示例性实施例中,通信组件816经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。
在一个示例性实施例中,所述通信组件816还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
[0178] 在示例性实施例中,装置800可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器微控制器微处理器或其他电子元件实现,用于执行上述方法。
[0179] 在示例性实施例中,还提供了一种非易失性计算机可读存储介质,例如包括计算机程序指令的存储器804,上述计算机程序指令可由装置800的处理器820执行以完成上述方法。
[0180] 图11是根据一示例性实施例示出的一种数据同步装置1900的框图。例如,装置1900可以被提供为一服务器。参照图11,装置1900包括处理组件1922,其进一步包括一个或多个处理器,以及由存储器1932所代表的存储器资源,用于存储可由处理组件1922的执行的指令,例如应用程序。存储器1932中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件1922被配置为执行指令,以执行上述方法。
[0181] 装置1900还可以包括一个电源组件1926被配置为执行装置1900的电源管理,一个有线或无线网络接口1950被配置为将装置1900连接到网络,和一个输入输出(I/O)接口1958。装置1900可以操作基于存储在存储器1932的操作系统,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM或类似。
[0182] 在示例性实施例中,还提供了一种非易失性计算机可读存储介质,例如包括计算机程序指令的存储器1932,上述计算机程序指令可由装置1900的处理组件1922执行以完成上述方法。
[0183] 本公开可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本公开的各个方面的计算机可读程序指令。
[0184] 计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号
[0185] 这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
[0186] 用于执行本公开操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如Smalltalk、C++等,以及常规的过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)-连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本公开的各个方面。
[0187] 这里参照根据本公开实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本公开的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
[0188] 这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
[0189] 也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
[0190] 附图中的流程图和框图显示了根据本公开的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
[0191] 以上已经描述了本公开的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈