本发明涉及数据存储,尤其涉及一种画板数据保存方法、装置、存储介质及电子设备。
背景技术:
1、随着图像处理软件的普及,用户可以利用图像处理软件提供的画板功能绘制图画,并在图画上添加文字和图片等信息,实现图像的个性化处理。
2、然而,画板功能相较于其他软件功能,画板功能需要保存的画板数据具有数据量大和数据结构复杂的数据特点,比如用户在画板上编辑的每一笔绘制内容都包含几十个、甚至上百个画笔位置点数据,与此同时,依据绘制图像的复杂性,不同笔画之间的颜色、粗细和类型等数据结构也存在差异,使得画板数据的数据文件大小较大,画板数据保存时间也越长,提升了画板数据保存进程被意外中断的风险,容易丢失画板数据,影响用户对画板功能的使用体验。
3、因此,如何针对画板数据的数据特点提供可靠的保存方式,成为本领域技术人员急需解决的技术问题。
技术实现思路
1、鉴于上述问题,本发明提供一种克服上述问题或者至少部分地解决上述问题的一种画板数据保存方法、装置、存储介质及电子设备,技术方案如下:
2、一种画板数据保存方法,包括:
3、获得用户在画板上执行本次编辑操作所生成的当前画板数据;
4、将所述当前画板数据分别保存至内存和数据库中;
5、至少对所述内存中的所述当前画板数据进行序列化处理,获得第一画板序列化数据;
6、对所述第一画板序列化数据执行文件生成操作,其中,所述文件生成操作用于生成包括所述第一画板序列化数据的第一本地画板文件;
7、在所述第一本地画板文件生成失败的情况下,至少利用所述数据库中的所述当前画板数据进行数据恢复,获得第二画板序列化数据,将所述第二画板序列化数据作为第一画板序列化数据,返回执行所述对所述第一画板序列化数据执行文件生成操作的步骤,直至所述第一本地画板文件生成成功。
8、可选的,所述至少利用所述数据库中的所述当前画板数据进行数据恢复,获得第二画板序列化数据,包括:
9、对所述数据库中的所述当前画板数据进行序列化处理,获得第二画板序列化数据。
10、可选的,在所述获得用户在画板上执行本次编辑操作生成的当前画板数据之前,所述方法还包括:
11、响应于与第二本地画板文件对应的加载指令,读取所述第二本地画板文件中的第三画板序列化数据;
12、对所述第三画板序列化数据进行反序列化处理,获得历史画板数据,其中,所述历史画板数据与用户在所述画板上的历史编辑操作对应;
13、将所述历史画板数据保存至所述内存中;
14、所述至少对所述内存中的所述当前画板数据进行序列化处理,获得第一画板序列化数据,包括:
15、对所述内存中的所述历史画板数据和所述当前画板数据进行序列化处理,获得第一画板序列化数据。
16、可选的,所述至少利用所述数据库中的所述当前画板数据进行数据恢复,获得第二画板序列化数据,包括:
17、利用所述第二本地画板文件,获得所述历史画板数据;
18、对所述历史画板数据和所述数据库中的所述当前画板数据进行序列化处理,获得第二画板序列化数据。
19、可选的,所述方法还包括:
20、在所述第一本地画板文件生成成功的情况下,删除所述第二本地画板文件。
21、可选的,所述方法还包括:
22、在所述第一本地画板文件生成成功的情况下,删除所述数据库中的所述当前画板数据。
23、可选的,在所述对所述第一画板序列化数据执行文件生成操作之后,所述方法还包括:
24、在所述第一画板序列化数据全部保存到目标临时文件的情况下,检测所述目标临时文件的文件名,获得文件名检测结果;
25、利用所述文件名检测结果,获得所述第一本地画板文件的生成结果。
26、一种画板数据保存装置,包括:当前画板数据获得单元、当前画板数据保存单元、第一画板序列化数据获得单元、文件生成操作执行单元和数据恢复单元,
27、所述当前画板数据获得单元,用于获得用户在画板上执行本次编辑操作所生成的当前画板数据;
28、所述当前画板数据保存单元,用于将所述当前画板数据分别保存至内存和数据库中;
29、所述第一画板序列化数据获得单元,用于至少对所述内存中的所述当前画板数据进行序列化处理,获得第一画板序列化数据;
30、所述文件生成操作执行单元,用于对所述第一画板序列化数据执行文件生成操作,其中,所述文件生成操作用于生成包括所述第一画板序列化数据的第一本地画板文件;
31、所述数据恢复单元,用于在所述第一本地画板文件生成失败的情况下,至少利用所述数据库中的所述当前画板数据进行数据恢复,获得第二画板序列化数据,将所述第二画板序列化数据作为第一画板序列化数据,重新触发所述文件生成操作执行单元,直至所述第一本地画板文件生成成功。
32、一种计算机可读存储介质,其上存储有程序,所述程序被处理器执行时实现上述任一项所述的画板数据保存方法。
33、一种电子设备,所述电子设备包括至少一个处理器、以及与处理器连接的至少一个存储器、总线;其中,所述处理器、所述存储器通过所述总线完成相互间的通信;所述处理器用于调用所述存储器中的程序指令,以执行上述任一项所述的画板数据保存方法。
34、借由上述技术方案,本发明提供的一种画板数据保存方法、装置、存储介质及电子设备,获得用户在画板上执行本次编辑操作所生成的当前画板数据;将当前画板数据分别保存至内存和数据库中;至少对内存中的当前画板数据进行序列化处理,获得第一画板序列化数据;对第一画板序列化数据执行文件生成操作,其中,文件生成操作用于生成包括第一画板序列化数据的第一本地画板文件;在第一本地画板文件生成失败的情况下,至少利用数据库中的当前画板数据进行数据恢复,获得第二画板序列化数据,将第二画板序列化数据作为第一画板序列化数据,返回执行对第一画板序列化数据执行文件生成操作的步骤,直至第一本地画板文件生成成功。本发明结合使用序列化技术能够有效压缩画板数据,减少画板数据的数据量,再将序列化后的数据保存为画板文件,降低保存画板数据的复杂程度和保存时间,并通过数据库存储画板数据的方式,在画板文件生成失败的情况下快速进行数据恢复,保证用户在画板上的数据得到安全且正确地保存,提升用户对画板功能的使用体验。
35、上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
1.一种画板数据保存方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,所述至少利用所述数据库中的所述当前画板数据进行数据恢复,获得第二画板序列化数据,包括:
3.根据权利要求1所述的方法,其特征在于,在所述获得用户在画板上执行本次编辑操作所生成的当前画板数据之前,所述方法还包括:
4.根据权利要求3所述的方法,其特征在于,所述至少利用所述数据库中的所述当前画板数据进行数据恢复,获得第二画板序列化数据,包括:
5.根据权利要求4所述的方法,其特征在于,还包括:
6.根据权利要求1至5中任一项所述的方法,其特征在于,还包括:
7.根据权利要求6所述的方法,其特征在于,在所述对所述第一画板序列化数据执行文件生成操作之后,所述方法还包括:
8.一种画板数据保存装置,其特征在于,包括:当前画板数据获得单元、当前画板数据保存单元、第一画板序列化数据获得单元、文件生成操作执行单元和数据恢复单元,
9.一种计算机可读存储介质,其上存储有程序,其特征在于,所述程序被处理器执行时实现如权利要求1至7中任一项所述的画板数据保存方法。
10.一种电子设备,所述电子设备包括至少一个处理器、以及与处理器连接的至少一个存储器、总线;其中,所述处理器、所述存储器通过所述总线完成相互间的通信;所述处理器用于调用所述存储器中的程序指令,以执行如权利要求1至7中任一项所述的画板数据保存方法。