文件转换方法、装置、计算机设备及存储介质与流程

文档序号:29309231发布日期:2022-03-19 19:34阅读:164来源:国知局
文件转换方法、装置、计算机设备及存储介质与流程

1.本发明实施例涉及数据处理领域,尤其是一种文件转换方法、装置、计算机设备及存储介质。


背景技术:

2.java是一门面向对象编程语言,不仅吸收了c++语言的各种优点,还摒弃了c++里难以理解的多继承、指针等概念,因此java语言具有功能强大和简单易用两个特征。java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程。
3.本专利申请的发明人在研究中发现,一些开发者使用java语言开发java文件后,通过服务器本地目录作为存储地址,通过保存文件的相对路径来获取java文件,这种存储方式下在每次修改java版本时,都需要将文件目录做一次备份,不然直接将打包好的war包替换原来的版本时可能会丢失文件。因此,现有的java文件存储方式存在读写效率低,文件修改流程繁复的问题。


技术实现要素:

4.本发明实施例提供一种将java文件进行轻量化存储的文件转换方法、装置、计算机设备及存储介质。
5.为解决上述技术问题,本发明创造的实施例采用的一个技术方案是:提供一种文件转换方法,包括:
6.采集待转换的java文件;
7.基于预设的jdt解析工具,对所述java文件进行文件解析生成所述java文件的标准对象;
8.根据预设的java强制转换语句对所述标准对象进行转换,生成所述java文件对应的目标对象;
9.基于预设的json转换工具将所述目标对象进行转换,生成所述目标对象对应的json文件;
10.将所述json文件存储在预设的postgresql数据库中。
11.可选地,所述将所述json文件存储在预设的postgresql数据库中,包括:
12.将所述json文件进行二进制转换生成jsonb文件;
13.根据所述jsonb文件创建存储表,并将所述jsonb文件通过新增数据的方式写入到所述存储表中;
14.将所述存储表存储在所述postgresql数据库的存储空间内。
15.可选地,所述postgresql数据库包括页首部和元组记录空间,所述将所述json文件存储在预设的postgresql数据库中,包括:
16.提取所述json文件中的页面信息,将所述页面信息存储在所述页首部中;
17.提取所述json文件中的元组数据组和元祖参数信息,将所述元组数据组和元祖参数信息合并成为项目文件;
18.将所述项目文件写入到所述元组记录空间内。
19.可选地,所述postgresql数据库还包括特殊空间,所述将所述存储表存储在所述postgresql数据库的存储空间内之后,包括:
20.采集目标用户针对所述页面信息的修改指令;
21.根据所述修改指令在预设的指令库中适配所述修改指令对应的操作函数;
22.根据所述操作函数将所述修改指令表征的页面修改参数写入到所述特殊空间中。
23.可选地,所述将所述json文件存储在预设的postgresql数据库中之后,包括:
24.提取所述页首部中的页面信息,并根据所述页面信息采集组成页面的页面元素;
25.根据所述元组数据组和元祖参数信息对所述页面元素进行位置排列,生成所述页面的第一还原页面;
26.根据所述页面修改参数对所述第一还原页面进行页面矫正处理,生成所述页面的第二还原页面。
27.可选地,所述根据所述页面修改参数对所述第一还原页面进行页面矫正处理,生成所述页面的第二还原页面之后,包括:
28.采集用户终端的操控日志;
29.提取所述操控日志中记载的针对所述页面的操控指令;
30.根据所述操控指令和所述第二还原页面,对所述操控指令进行场景还原生成演示数据。
31.可选地,所述根据所述操控指令和所述第二还原页面,对所述操控指令进行场景还原生成演示数据,包括:
32.按操作时序对所述操控指令进行排序生成指令时序;
33.根据所述操控日志确定所述指令时序对应的被控页面元素;
34.根据所述指令时序生成所述被控页面元素的运动路径,并根据所述运动路径控制所述被控页面元素在所述第二还原页面进行移动,生成所述演示数据。
35.为解决上述技术问题,本发明实施例还提供一种文件转换装置,包括:
36.采集模块,用于采集待转换的java文件;
37.解析模块,用于基于预设的jdt解析工具,对所述java文件进行文件解析生成所述java文件的标准对象;
38.转换模块,用于根据预设的java强制转换语句对所述标准对象进行转换,生成所述java文件对应的目标对象;
39.处理模块,用于基于预设的json转换工具将所述目标对象进行转换,生成所述目标对象对应的json文件;
40.执行模块,用于将所述json文件存储在预设的postgresql数据库中。
41.可选地,所述文件转换装置还包括:
42.第一转换子模块,用于将所述json文件进行二进制转换生成jsonb文件;
43.第一写入子模块,用于根据所述jsonb文件创建存储表,并将所述jsonb文件通过新增数据的方式写入到所述存储表中;
44.第一存储子模块,用于将所述存储表存储在所述postgresql数据库的存储空间内。
45.可选地,所述postgresql数据库包括页首部和元组记录空间,所述文件转换装置还包括:
46.第一提取子模块,用于提取所述json文件中的页面信息,将所述页面信息存储在所述页首部中;
47.第二提取子模块,用于提取所述json文件中的元组数据组和元祖参数信息,将所述元组数据组和元祖参数信息合并成为项目文件;
48.第二写入子模块,用于将所述项目文件写入到所述元组记录空间内。
49.可选地,所述postgresql数据库还包括特殊空间,所述文件转换装置还包括:
50.第一采集子模块,用于采集目标用户针对所述页面信息的修改指令;
51.第一适配子模块,用于根据所述修改指令在预设的指令库中适配所述修改指令对应的操作函数;
52.第三写入子模块,用于根据所述操作函数将所述修改指令表征的页面修改参数写入到所述特殊空间中。
53.可选地,所述文件转换装置还包括:
54.第三提取子模块,用于提取所述页首部中的页面信息,并根据所述页面信息采集组成页面的页面元素;
55.第一处理子模块,用于根据所述元组数据组和元祖参数信息对所述页面元素进行位置排列,生成所述页面的第一还原页面;
56.第一执行子模块,用于根据所述页面修改参数对所述第一还原页面进行页面矫正处理,生成所述页面的第二还原页面。
57.可选地,所述文件转换装置还包括:
58.第二采集子模块,用于采集用户终端的操控日志;
59.第二处理子模块,用于提取所述操控日志中记载的针对所述页面的操控指令;
60.第二执行子模块,用于根据所述操控指令和所述第二还原页面,对所述操控指令进行场景还原生成演示数据。
61.可选地,所述文件转换装置还包括:
62.第一排序子模块,用于按操作时序对所述操控指令进行排序生成指令时序;
63.第三处理子模块,用于根据所述操控日志确定所述指令时序对应的被控页面元素;
64.第三执行子模块,用于根据所述指令时序生成所述被控页面元素的运动路径,并根据所述运动路径控制所述被控页面元素在所述第二还原页面进行移动,生成所述演示数据。
65.为解决上述技术问题本发明实施例还提供一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述计算机可读指令被所述处理器执行时,使得所述处理器执行上述所述文件转换方法的步骤。
66.为解决上述技术问题本发明实施例还提供一种计算机存储介质,所述计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行上述所述文件转换方法的步
骤。
67.本发明实施例的有益效果是:在进行java文件存储时,先将java进行解析得到标准对象,继续对标准对象进行转换,将标准对象转换为低阶的目标对象,最终将目标对象转换为json文件,经过一连串的转换实现了从java文件到json文件的转换,json文件为轻量文件,在存储时更易写入和读取更加的方便快捷,大大提高了文件的存储效率。而在postgresql中json文件的保存格式为jsonb格式,能够进行插入式的修改,无需将所有文件都加载到内存中进行修改,简化了修改流程,提升了修改的效率。
附图说明
68.本技术上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
69.图1为本技术一个具体实施例的文件转换方法的基本流程示意图;
70.图2为本技术一个具体实施例的jsonb格式存储的流程示意图;
71.图3为本技术一个具体实施例的分类存储的一种流程示意图;
72.图4为本技术一个具体实施例的根据用户指令对存储数据进行修改的流程示意图;
73.图5为本技术一个具体实施例的还原用户终端页面的流程示意图;
74.图6为本技术一个具体实施例的对用户操作进行还原的流程示意图;
75.图7为本技术一个实施例的生成演示数据的流程示意图;
76.图8为本技术一个实施例的文件转换装置基本结构示意图;
77.图9为本技术一个实施例的计算机设备的基本结构框图。
具体实施方式
78.下面详细描述本技术的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本技术,而不能解释为对本技术的限制。
79.本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本技术的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。
80.本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本技术所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。
81.本技术领域技术人员可以理解,这里所使用的“终端”既包括无线信号接收器的设备,其仅具备无发射能力的无线信号接收器的设备,又包括接收和发射硬件的设备,其具有能够在双向通信链路上,执行双向通信的接收和发射硬件的设备。这种设备可以包括:蜂窝或其他通信设备,其具有单线路显示器或多线路显示器或没有多线路显示器的蜂窝或其他
通信设备;pcs(personal communications service,个人通信系统),其可以组合语音、数据处理、传真和/或数据通信能力;pda(personal digital assistant,个人数字助理),其可以包括射频接收器、寻呼机、互联网/内联网访问、网络浏览器、记事本、日历和/或gps(global positioning system,全球定位系统)接收器;常规膝上型和/或掌上型计算机或其他设备,其具有和/或包括射频接收器的常规膝上型和/或掌上型计算机或其他设备。这里所使用的“终端”可以是便携式、可运输、安装在交通工具(航空、海运和/或陆地)中的,或者适合于和/或配置为在本地运行,和/或以分布形式,运行在地球和/或空间的任何其他位置运行。这里所使用的“终端”还可以是通信终端、上网终端、音乐/视频播放终端,例如可以是pda、mid(mobile internet device,移动互联网设备)和/或具有音乐/视频播放功能的移动电话,也可以是智能电视、机顶盒等设备。
82.请参阅图1,图1为本实施例文件转换方法的基本流程示意图。
83.如图1所示,一种文件转换方法,包括:
84.s110、采集待转换的java文件;
85.本实施方式中,当服务器端运行产生java文件后,将该java文件定义为待转换数据,需要对该java文件数据进行转换后存储。
86.在一些实施方式中,java文件的来源还能够为来自于用户终端的页面数据,用户终端将采集的页面数据转换为java文件,然后,上传至服务器端。
87.s120、基于预设的jdt解析工具,对所述java文件进行文件解析生成所述java文件的标准对象;
88.服务器端预设有jdt解析工具。jdt(java development tools)是一组为eclipse平台添加了功能齐全的java集成开发环境功能的插件。jdt插件提供api,从而支持开发者开发基于jdt的其他的插件。jdt插件由以下组件组成:jdt apt、jdt core、jdt debug、jdt text、jdt ui。
89.jdt解析工具能够对java文件进行文件解析,解析得到java文件中的包信息、方法信息、属性信息、方法注解信息、类信息及类注解信息。再根据java文件中的包信息、方法信息、属性信息、方法注解信息、类信息及类注解信息构成java的标准对象。
90.s130、根据预设的java强制转换语句对所述标准对象进行转换,生成所述java文件对应的目标对象;
91.当转换得到java的标准对象后,需要对标准对象进行进一步的转换,将其转换为指定数据类型的目标对象。本次转化的方式为:通过java强制转换语句进行转换。
92.在java中整型、实型、字符型被视为简单数据类型,这些类型由低级到高级分别为(byte,short,char)
‑‑
int
‑‑
long
‑‑
float—double。简单数据类型之间的转换又可以分为:低级到高级的自动类型转换和高级到低级的强制类型转换。低级变量可以直接转换为高级变量,称之为自动类型转换,这种转换可以在java中直接通过。将高级变量转换为低级变量时,必须使用java强制转换语句进行转换。
93.因此,当标准对象为高级类型时,需要将其转化为低级类型的目标对象时,需要采用java强制转换语句对标准对象进行转换生成低级别的目标对象。
94.s140、基于预设的json转换工具将所述目标对象进行转换,生成所述目标对象对应的json文件;
95.当目标对象转换成功后,需要将目标对象进一步的转换为json文件。具体地,转换方式为:通过json转换工具进行转换。json转换工具包括(不限于):gson、fastjson、jackson或json-lib等工具类。
96.json转换工具的作用在于将目标对象转换为json语句,然后,由json语句组成json文件。
97.json(javascript object notation,js对象简谱)是一种轻量级的数据交换格式。它基于ecmascript(欧洲计算机协会制定的js规范)的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得json成为理想的数据交换语言。易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。
98.s150、将所述json文件存储在预设的postgresql数据库中。
99.当生成json文件后,需要对json文件进行存储,json文件存储的方式为postgresql数据库存储。postgresql是一种特性非常齐全的自由软件的对象-关系型数据库管理系统(ordbms),是以加州大学计算机系开发的postgres,属于对象关系型数据库管理系统。
100.postgresql中json文件的保存格式为jsonb格式。jsonb是解析java文件输入后保存的二进制,它在解析时会删除不必要的空格和重复的键,顺序和输入可能也不相同,使用时不用再次解析。jsonb存储特性,jsonb支持索引的特性有利于查询json;jsonb实现了对json的部分拆查询,可插入式新增修改,不需要查询所有加载到内存中,大大提高了性能。
101.上述实施方式中,在进行java文件存储时,先将java进行解析得到标准对象,继续对标准对象进行转换,将标准对象转换为低阶的目标对象,最终将目标对象转换为json文件,经过一连串的转换实现了从java文件到json文件的转换,json文件为轻量文件,在存储时更易写入和读取更加的方便快捷,大大提高了文件的存储效率。而在postgresql中json文件的保存格式为jsonb格式,能够进行插入式的修改,无需将所有文件都加载到内存中进行修改,简化了修改流程,提升了修改的效率。
102.在一些实施方式中,json文件需要以jsonb格式进行存储。请参阅图2,图2为本实施例jsonb格式存储的流程示意图。
103.如图2所示,s150包括:
104.s151、将所述json文件进行二进制转换生成jsonb文件;
105.json文件在postgresql数据库中进行存储时,需要将json文件转换为jsonb文件。jsonb文件实则是json文件的二进制文件,因此,从json文件转换为jsonb文件,其实,就是对json文件进行二进制转换。
106.具体地,通过ascii码表依次对json文件的字符进行转换,所有字符转换完成后,就能够得到json文件二进制文件,即jsonb文件。
107.s152、根据所述jsonb文件创建存储表,并将所述jsonb文件通过新增数据的方式写入到所述存储表中;
108.当jsonb文件转换完成后,在postgresql数据库中创建一个空白的存储表。空白存储表中用于记录jsonb文件的文件编码,即将jsonb文件的以新增内容的方式写入到存储表中。
109.s153、将所述存储表存储在所述postgresql数据库的存储空间内。
110.当jsonb文件完全写入到存储表中后,需要对存储表进行存储。具体地,将写有jsonb文件的存储表存储到postgresql数据库的存储空间内。至此,完成对json文件的存储。json文件的存储格式为jsonb格式,jsonb格式支持索引的特性有利于查询json;jsonb实现了对json的部分拆查询,可插入式新增修改,不需要查询所有加载到内存中,大大提高了性能。
111.在一些实施方式中,当java文件中记载的内容为用户终端的页面内容时,需要对json文件进行拆分存储。请参阅图3,图3为本实施例分类存储的一种流程示意图。
112.如图3所示,s150包括:
113.s161、提取所述json文件中的页面信息,将所述页面信息存储在所述页首部中;
114.本实施方式中,java文件中记载的内容为用户终端的页面内容,则相应的json文件中也记载的是页面信息。通过json文件中关于页面信息的字段提取到后,就能够得到json文件中的页面信息。
115.postgresql内存页面的默认大小是8kb。页面的逻辑结构被定义成三个部分:页首部(pageheader)、元组记录空间(ltem space)以及特殊空间(special space)。
116.页首部记录了页面的使用信息,这些信息由元组记录空间和特殊空间的偏移量地址、页面分布格式版本号和页面的事物日志记载点等等所组成。
117.当提取得到json文件中的页面信息后,将该页面信息写入到页首部中。
118.s162、提取所述json文件中的元组数据组和元祖参数信息,将所述元组数据组和元祖参数信息合并成为项目文件;
119.页面数据中除了页面信息以外,还有元组数据组,元组数据组具体是指页面中的元素组件,例如,登录模块、视频播放模块或文字显示模块等元素组件。而元祖参数信息则是指页面中元组数据组偏移量、指针状态和元祖比特长度等。
120.元组记录空间是存储元组信息的地方,在这里面每个元组记录被称为一个ltem,item由ltemld和元组数据组成,ltemld内部定义了元组在页面中的偏移量、ltem指针的状态以及元组项的比特位数长度。
121.每一组元组数据组以及其对应的元祖参数信息均具有提取字段,读取该提取字段后,就能够在json文件中提取得到元组数据组和元祖参数信息。提取得到元组数据组和元祖参数信息后,对上述两组数据进行打包生成项目文件。
122.s163、将所述项目文件写入到所述元组记录空间内。
123.将由元组数据组和元祖参数信息组成的项目文件写入到元组记录空间内。即将页面信息和项目文件分开存储,但在读取时能够将上述两组数据进行关联读取。
124.在一些实施方式中,当用户对目标页面进行修改时,将修改参数记载在postgresql数据库的特殊空间内。请参阅图4,图4为本实施例根据用户指令对存储数据进行修改的流程示意图。
125.如图4所示,s163之后包括:
126.s164、采集目标用户针对所述页面信息的修改指令;
127.当目标用户通过终端对页面信息进行修改时,用户通过用户终端生成修改指令,并通过用户终端将该修改指令发送至服务器端,服务器端接收该修改指令。
128.s165、根据所述修改指令在预设的指令库中适配所述修改指令对应的操作函数;
129.本实施方式中,服务器端设置有指令库,针对每一种用户修改指令,例如,新增、删除、修复或初始化等修改指令,均设置有与之对应的操作函数。每一类操作函数对应执行一种修改指令。因此,当得到目标终端发送的修改指令后,根据修改指令的类型匹配与之对应的操作函数。
130.s166、根据所述操作函数将所述修改指令表征的页面修改参数写入到所述特殊空间中。
131.特殊空间是为了页面操作所需要的特定存储空间。为了方便用户对页面进行操作,postgresql的指令库内部定义了一些页面的操作函数。页面的相关操作包括页面初始化、页面添加、修复和删除。供用户进行调用。
132.修改指令中包括对页面进行修改的页面修改参数,当得到修改指令对应的操作函数后,将该操作函数和页面修改参数一起写入到特殊空间中。或者由操作函数对页面修改参数进行计算后生成替换参数,并将该替换参数写入到特殊空间中。
133.本实施方式中,用户对页面进行修改时,不用再将整个json文件加载到内存空间内,对修改指令对应的修改数据进行替换后,将更新替换后的json文件重新进行写入来完成修改动作。而是只需要将用户指令表征的页面修改参数存储在特殊空间即可。这种存储方法大大提高json文件的修改效率。
134.在一些实施方式中,在进行用户终端页面校验时,需要对用户终端的页面进行还原,在无法直接获取用户终端页面的情况下,通过存储的json文件对页面进行还原。请参阅图5,图5为本实施例还原用户终端页面的流程示意图。
135.如图5所示,s150之后,包括:
136.s171、提取所述页首部中的页面信息,并根据所述页面信息采集组成页面的页面元素;
137.当需要对用户终端的页面进行还原时,根据目标终端的身份信息和页面的编号信息,确定存储该用户页面中的页首部。提取该页首部中的页面信息,页面信息中存储有组成页面的页面元素,例如,图片、文字、视频或者各类元祖的脚本文件等。
138.这些页面元素存储在服务器端的素材库中,根据页面信息中各页面元素的编号信息,能够才素材库中检索得到每一个页面元素。
139.s172、根据所述元组数据组和元祖参数信息对所述页面元素进行位置排列,生成所述页面的第一还原页面;
140.当采集得到页面的页面元素后,需要进一步的对得到的页面元素进行组装,组装的过程就是按页面的格局将各个页面元素按目标终端页面的位置进行还原。
141.每个页面元素的位置信息和指针信息都记载在元组数据组和元祖参数信息,元组数据组记载页面元素之间的组合关系以及组合后生成的功能模块。而元祖参数信息中则记载单一页面元素和组合页面元素组成的功能模块的位置信息和指针信息。
142.根据元组数据组和元祖参数信息对页面元素进行组合和位置组装,将页面元素排列成第一还原页面。第一还原页面中并没有记载用户对该页面的自定义修改,因此,需要对第一还原页面进行进一步的校正。
143.s173、根据所述页面修改参数对所述第一还原页面进行页面矫正处理,生成所述页面的第二还原页面。
144.生成第一还原页面后,调用特殊空间内的页面修改参数,并根据该页面修改参数对页面中的元素进行位置或者指针矫正,矫正后的页面为第二还原页面。第二还原页面为目标终端页面还原的最终版本。
145.在一些实施方式中,第一还原页面生成后,提取特殊空间内的页面修改参数,此时,如果特殊空间内的数据为空时,就说明用户未对该页面进行修改。无需对第一还原页面进行矫正。
146.通过存储数据对用户终端的页面进行还原,在无法获取用户终端页面截图的情况下,真实的还原了用户终端的页面状态,提高了页面还原的环境适应性。
147.在一些实施方式中,当服务器端还原得到第二还原页面后,需要进一步的还原用户针对原页面的操作过程,以便于更加直观的对用户的页面操作进行观察。请参阅图6,图6为本实施例对用户操作进行还原的流程示意图。
148.如图6所示,s173之后包括:
149.s174、采集用户终端的操控日志;
150.用户在用户终端上对页面进行操作时,用户能够通过用户终端的外设设备对页面进行操作。但是,用户对页面的操作方式不局限于此,在一些选择性实施方式中,用户能够通过手指控制、语音控制或者表情控制向页面发布操控指令。
151.用户针对页面的操控指令会被记录在用户终端的操控日志内,操控日志中记载用户发布用户指令的时间,以及该用户指令针对的页面元素等信息。
152.用户终端将采集得到用户的操控指令后,将该操控指令记载在操控日志中,然后,将操控日志发送至服务器端。
153.s175、提取所述操控日志中记载的针对所述页面的操控指令;
154.服务器端在接收到用户终端发送的操控日志后,根据预先设定的解析规则,在操控日志中提取该操控日志中的操控指令。
155.由于,在用户终端和服务器端的交互协议中,已经预设有每一种用户操控指令的身份标识,根据该身份标识就能够得到每一类数据操控指令的操控名称和方式。操控指令包括(不限于):添加、删除、确定、拖动、选取、复制、打印、刷新或者写入等操作。
156.s176、根据所述操控指令和所述第二还原页面,对所述操控指令进行场景还原生成演示数据。
157.当得到操控日志的操控指令后,继续从操控日志中获取该操控指令的指令地址。该指令地址记载用户操控指令在页面上的位置坐标。
158.当得到操控指令以及操控指令的指令地址后,服务器端调用已经生成的第二还原页面。再根据操控指令对应的页面元素,在第二还原页面中确定该页面元素,根据指令地址在第二还原页面上对该页面元素进行选中,选中后对该页面元素执行控制指令表征的控制任务。在选中页面元素和执行控制任务的过程中对第二还原页面进行录屏处理,生成该控制指令对应的演示数据。
159.根据用户的控制指令生成演示数据,能够使服务器端的管理员对用户的操作行为进行直观观察,容易识别由于用户错误操作导致的报错问题。
160.在一些实施方式中,当用户进行页面验证时,演示数据能够帮助管理员识别用户是否直接使用数据进行验证,而未对拖动验证进行实际操作。请参阅图7,图7为本实施例生
成演示数据的流程示意图。
161.如图7所示,s176包括:
162.s181、按操作时序对所述操控指令进行排序生成指令时序;
163.当用户在用户终端上针对页面进行拖动验证时,需要在选中被控页面元素后,拖动被控页面元素前往指定的页面位置后,才能完成验证动作。
164.此场景中,用户的操控指令是连续进行的,目标终端通过采样的方式记载该操控指令延续期间的时间信息,以及每个时间信息对应的指令地址。
165.因此,将该操控指令按采样的时间排列后,生成该操控指令的指令时序。
166.s182、根据所述操控日志确定所述指令时序对应的被控页面元素;
167.用户针对页面的操控指令会被记录在用户终端的操控日志内,操控日志中记载用户发布用户指令的时间,以及该用户指令针对的页面元素等信息。将用户指令针对的页面元素定义为被控页面元素。
168.通过控制日志先定位到用户指令对应的操控指令,根据操控指令中的元素指针,确定出控制指令对应的被控页面元素,由于,指令时序由控制指令转化而来,因此,该被控页面元素也就是指令时序对应的被控页面元素。
169.s183、根据所述指令时序生成所述被控页面元素的运动路径,并根据所述运动路径控制所述被控页面元素在所述第二还原页面进行移动,生成所述演示数据。
170.根据指令时序和该指令时序对应的指令地址,将指令地址按指令时序进行排列,生成被控页面元素的运动路径,控制被控页面元素根据指令时序在运动路径上进行运行,完成对用户指令的模拟还原。被控页面元素被选中到运动的整个运动过程中,对第二还原页面进行录屏生成演示数据。
171.本实施方式中,服务器端能够对目标终端的验证过程进行还原,使管理人员能够以演示视频的方式来检视用户验证的过程,提高了非法验证的识别几率和识别效率。
172.为解决上述技术问题,本发明实施例还提供文件转换装置。具体请参阅图8,图8为本实施例文件转换装置基本结构示意图。
173.如图8所示,一种文件转换装置,包括:采集模块110、解析模块120、转换模块130、处理模块140和执行模块150。采集模块110用于采集待转换的java文件;解析模块120用于基于预设的jdt解析工具,对所述java文件进行文件解析生成所述java文件的标准对象;转换模块130用于根据预设的java强制转换语句对所述标准对象进行转换,生成所述java文件对应的目标对象;处理模块140用于基于预设的json转换工具将所述目标对象进行转换,生成所述目标对象对应的json文件;执行模块150用于将所述json文件存储在预设的postgresql数据库中。
174.文件转换装置在进行java文件存储时,先将java进行解析得到标准对象,继续对标准对象进行转换,将标准对象转换为低阶的目标对象,最终将目标对象转换为json文件,经过一连串的转换实现了从java文件到json文件的转换,json文件为轻量文件,在存储时更易写入和读取更加的方便快捷,大大提高了文件的存储效率。而在postgresql中json文件的保存格式为jsonb格式,能够进行插入式的修改,无需将所有文件都加载到内存中进行修改,简化了修改流程,提升了修改的效率。
175.在一些实施方式中,所述文件转换装置还包括:
176.第一转换子模块,用于将所述json文件进行二进制转换生成jsonb文件;
177.第一写入子模块,用于根据所述jsonb文件创建存储表,并将所述jsonb文件通过新增数据的方式写入到所述存储表中;
178.第一存储子模块,用于将所述存储表存储在所述postgresql数据库的存储空间内。
179.在一些实施方式中,所述postgresql数据库包括页首部和元组记录空间,所述文件转换装置还包括:
180.第一提取子模块,用于提取所述json文件中的页面信息,将所述页面信息存储在所述页首部中;
181.第二提取子模块,用于提取所述json文件中的元组数据组和元祖参数信息,将所述元组数据组和元祖参数信息合并成为项目文件;
182.第二写入子模块,用于将所述项目文件写入到所述元组记录空间内。
183.在一些实施方式中,所述postgresql数据库还包括特殊空间,所述文件转换装置还包括:
184.第一采集子模块,用于采集目标用户针对所述页面信息的修改指令;
185.第一适配子模块,用于根据所述修改指令在预设的指令库中适配所述修改指令对应的操作函数;
186.第三写入子模块,用于根据所述操作函数将所述修改指令表征的页面修改参数写入到所述特殊空间中。
187.在一些实施方式中,所述文件转换装置还包括:
188.第三提取子模块,用于提取所述页首部中的页面信息,并根据所述页面信息采集组成页面的页面元素;
189.第一处理子模块,用于根据所述元组数据组和元祖参数信息对所述页面元素进行位置排列,生成所述页面的第一还原页面;
190.第一执行子模块,用于根据所述页面修改参数对所述第一还原页面进行页面矫正处理,生成所述页面的第二还原页面。
191.在一些实施方式中,所述文件转换装置还包括:
192.第二采集子模块,用于采集用户终端的操控日志;
193.第二处理子模块,用于提取所述操控日志中记载的针对所述页面的操控指令;
194.第二执行子模块,用于根据所述操控指令和所述第二还原页面,对所述操控指令进行场景还原生成演示数据。
195.在一些实施方式中,所述文件转换装置还包括:
196.第一排序子模块,用于按操作时序对所述操控指令进行排序生成指令时序;
197.第三处理子模块,用于根据所述操控日志确定所述指令时序对应的被控页面元素;
198.第三执行子模块,用于根据所述指令时序生成所述被控页面元素的运动路径,并根据所述运动路径控制所述被控页面元素在所述第二还原页面进行移动,生成所述演示数据。
199.为解决上述技术问题,本发明实施例还提供计算机设备。具体请参阅图9,图9为本
实施例计算机设备基本结构框图。
200.如图9所示,计算机设备的内部结构示意图。该计算机设备包括通过系统总线连接的处理器、非易失性存储介质、存储器和网络接口。其中,该计算机设备的非易失性存储介质存储有操作系统、数据库和计算机可读指令,数据库中可存储有控件信息序列,该计算机可读指令被处理器执行时,可使得处理器实现一种文件转换方法。该计算机设备的处理器用于提供计算和控制能力,支撑整个计算机设备的运行。该计算机设备的存储器中可存储有计算机可读指令,该计算机可读指令被处理器执行时,可使得处理器执行一种文件转换方法。该计算机设备的网络接口用于与终端连接通信。本领域技术人员可以理解,图9中示出的结构,仅仅是与本技术方案相关的部分结构的框图,并不构成对本技术方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
201.本实施方式中处理器用于执行图8中采集模块110、解析模块120、转换模块130、处理模块140和执行模块150的具体功能,存储器存储有执行上述模块所需的程序代码和各类数据。网络接口用于向用户终端或服务器之间的数据传输。本实施方式中的存储器存储有文件转换装置中执行所有子模块所需的程序代码及数据,服务器能够调用服务器的程序代码及数据执行所有子模块的功能。
202.计算机设备在进行java文件存储时,先将java进行解析得到标准对象,继续对标准对象进行转换,将标准对象转换为低阶的目标对象,最终将目标对象转换为json文件,经过一连串的转换实现了从java文件到json文件的转换,json文件为轻量文件,在存储时更易写入和读取更加的方便快捷,大大提高了文件的存储效率。而在postgresql中json文件的保存格式为jsonb格式,能够进行插入式的修改,无需将所有文件都加载到内存中进行修改,简化了修改流程,提升了修改的效率。
203.本发明还提供一种计算机存储介质,计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行上述任一实施例文件转换方法的步骤。
204.本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,该计算机程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,前述的存储介质可为磁碟、光盘、只读存储记忆体(read-only memory,rom)等非易失性存储介质,或随机存储记忆体(random access memory,ram)等。
205.本技术领域技术人员可以理解,本技术中已经讨论过的各种操作、方法、流程中的步骤、措施、方案可以被交替、更改、组合或删除。进一步地,具有本技术中已经讨论过的各种操作、方法、流程中的其他步骤、措施、方案也可以被交替、更改、重排、分解、组合或删除。进一步地,现有技术中的具有与本技术中公开的各种操作、方法、流程中的步骤、措施、方案也可以被交替、更改、重排、分解、组合或删除。
206.以上所述仅是本技术的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本技术原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本技术的保护范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1