CN114356341A - 一种数据处理方法、装置、设备、存储介质及产品 - Google Patents
一种数据处理方法、装置、设备、存储介质及产品 Download PDFInfo
- Publication number
- CN114356341A CN114356341A CN202210007957.3A CN202210007957A CN114356341A CN 114356341 A CN114356341 A CN 114356341A CN 202210007957 A CN202210007957 A CN 202210007957A CN 114356341 A CN114356341 A CN 114356341A
- Authority
- CN
- China
- Prior art keywords
- file
- data
- database
- protocol
- database table
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 20
- 230000002452 interceptive effect Effects 0.000 claims abstract description 68
- 238000000034 method Methods 0.000 claims abstract description 36
- 238000013507 mapping Methods 0.000 claims description 41
- 238000012545 processing Methods 0.000 claims description 17
- 238000004590 computer program Methods 0.000 claims description 16
- 230000000007 visual effect Effects 0.000 claims description 12
- 238000000547 structure data Methods 0.000 claims description 10
- 238000004806 packaging method and process Methods 0.000 claims description 8
- 238000013079 data visualisation Methods 0.000 abstract description 17
- 238000012360 testing method Methods 0.000 abstract description 14
- 238000010586 diagram Methods 0.000 description 24
- 238000010276 construction Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 8
- 230000035939 shock Effects 0.000 description 8
- 238000004891 communication Methods 0.000 description 7
- 230000008569 process Effects 0.000 description 7
- 238000012986 modification Methods 0.000 description 5
- 230000004048 modification Effects 0.000 description 5
- 238000004458 analytical method Methods 0.000 description 4
- 238000013500 data storage Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 238000004088 simulation Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000012217 deletion Methods 0.000 description 3
- 230000037430 deletion Effects 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 239000000872 buffer Substances 0.000 description 2
- 238000005538 encapsulation Methods 0.000 description 2
- 230000008676 import Effects 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 238000012800 visualization Methods 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
Images
Landscapes
- Stored Programmes (AREA)
Abstract
本申请的实施例揭示了一种数据处理方法、装置、设备及存储介质,该方法包括:展示交互界面,当接入新游戏项目时,通过交互界面接收新游戏项目的协议文件,协议文件用于定义新游戏项目中的数据库表,数据库表存储于游戏数据库中;对协议文件进行编译,以生成以预设编程语言编写的代码文件;根据代码文件将游戏数据库的应用程序接口编译为动态链接库文件;当通过交互界面接收到针对数据库表中的数据的编辑请求时,调用动态链接库文件,以访问应用程序接口,并通过应用程序接口获取数据库表中的与编辑请求对应的目标数据,将目标数据显示在交互界面上;通过将对应数据库库表的数据展示出来,实现游戏数据库中的数据可视化,极大地提高测试效率。
Description
技术领域
本申请涉及通信技术领域,具体而言,涉及一种数据处理方法、数据处理装置、电子设备、计算机可读存储介质及计算机产品。
背景技术
游戏管理员(GM),是游戏中主持游戏或监管玩家行为并维护游戏环境的负责人;游戏的游戏数据存储在游戏数据库中,当需要对游戏进行测试,需要从游戏数据库获取数据,并对数据进行构造;在相关技术中是通过开发人员提供GM命令实现,耗费人力和时长。
发明内容
为解决上述技术问题,本申请的实施例提供了一种数据处理方法、信息处理装置、电子设备、计算机可读存储介质及计算机程序产品,将对应数据库库表的数据展示出来,实现游戏数据库中的数据可视化,进而测试同学可以方便的进行数据构造,极大地提高测试效率。
本申请的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本申请的实践而习得。
根据本申请实施例的一个方面,提供了一种数据处理方法,包括:展示交互界面,当接入新游戏项目时,通过所述交互界面接收所述新游戏项目的协议文件,所述协议文件用于定义所述新游戏项目中的数据库表,所述数据库表存储于游戏数据库中;对所述协议文件进行编译,以生成以预设编程语言编写的代码文件;根据所述代码文件将所述游戏数据库的应用程序接口编译为动态链接库文件;当通过交互界面接收到针对所述数据库表中的数据的编辑请求时,调用所述动态链接库文件,以访问所述应用程序接口,并通过所述应用程序接口获取所述数据库表中的与所述编辑请求对应的目标数据,将所述目标数据显示在所述交互界面上。
根据本申请实施例的一个方面,提供了一种数据处理装置,包括:展示模块,用于展示交互界面;接收模块,用于当接入新游戏项目时,接收所述新游戏项目的协议文件,所述协议文件用于定义所述新游戏项目中的数据库表,所述数据库表存储于游戏数据库中;文件编译模块,用于对所述协议文件进行编译,以生成以预设编程语言编写的代码文件;接口编译模块,用于根据所述代码文件将所述游戏数据库的应用程序接口编译为动态链接库文件;调用模块,用于当通过交互界面接收到针对所述数据库表中的数据的编辑请求时,调用所述动态链接库文件,以访问所述应用程序接口,并通过所述应用程序接口获取所述数据库表中的与所述编辑请求对应的目标数据;所述展示模块,还用于将所述目标数据显示在所述交互界面上。
在本申请的一实施例中,所述数据处理装置还包括建立模块,建立模块用于当所述新游戏项目的数据库表与其他游戏项目的数据库表的表名相同,且数据库表的表结构不同时,建立所述新游戏项目与所述数据库表的映射关系,并将所述映射关系存储在所述游戏数据库中。
在本申请的一实施例中,所述调用模块包括分析单元和赋值单元;所述分析单元用于根据所述数据库表的表结构,对所述编辑请求所携带的请求数据进行分析,得到所述请求数据的字段类型;所述赋值单元用于若所述请求数据的字段类型为跨平台多语言数据表示协议中的非序列化结构数据格式的大文件字段,遍历所述数据库表中的字段值,并将与所述请求数据对应的字段值作为所述目标数据。
在本申请的一实施例中,所述映射关系还包括所述协议文件的协议路径,赋值单元还用于若所述请求数据的字段类型为跨平台多语言数据表示协议中的序列化结构数据格式的大文件字段,则根据所述数据库中的映射关系的协议路径,确定与所述序列化结构数据格式的大文件字段对应的协议文件,根据所述协议文件对所述请求数据进行解析,得到所述请求数据对应的字段名和字段值的对应关系,根据所述对应关系在所述数据库表中确定所述字段名对应的字段值,将所述字段值作为所述目标数据。
在本申请的一实施例中,所述文件编译模块进一步用于根据所述映射关系对所述数据库表的表名进行替换,生成新的协议文件;编译所述新的协议文件,以生成以预设编程语言编写的代码文件。
在本申请的一实施例中,所述接口编译模块进一步用于将所述代码文件添加至所述游戏数据库中,以使所述游戏数据库的所述应用程序接口调用所述代码文件;封装调用所述代码文件后的应用程序接口,得到目标接口;将所述目标接口编译为所述动态链接库文件。
在本申请的一实施例中,所述展示模块进一步用于对所述目标数据进行序列化操作得到二进制数据;将所述二进制数据进行反序列化操作后,在所述交互界面进行可视化显示。
根据本申请实施例的一个方面,提供了一种电子设备,包括一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个被所述一个或多个处理器执行时,使得所述电子设备实现如上所述的数据处理方法。
根据本申请实施例的一个方面,提供了一种计算机可读存储介质,其上存储有计算机可读指令,当所述计算机可读指令被计算机的处理器执行时,使计算机执行如上所述的数据处理方法。
根据本申请实施例的一个方面,提供了一种计算机程序产品,包括计算机指令,所述计算机指令被处理器执行时实现如上所述的数据处理方法。
在本申请的实施例所提供的技术方案中,展示交互界面,并通过交互界面接收新游戏项目的协议文件,通过对协议文件进行编译,以生成代码文件,进而通过代码文件对游戏数据库的应用程序接口编译为动态链接库文件,使得可调用该动态链接库文件,访问应用程序接口,获取游戏数据库中的数据后输出显示在交互界面,即将对应数据库库表的数据展示出来,实现游戏数据库中的数据可视化,进而测试同学可以方便的进行数据构造,方便并极大的提高测试效率。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术者来讲,在不付出创造性劳动的前提下还可以根据这些附图获得其他的附图。在附图中:
图1是本申请涉及的一种实施环境的示意图;
图2是本申请的一示例性实施例示出的一种数据处理方法的流程图;
图3是图2所示实施例中的步骤S120的流程示意图;
图4是图2所示实施例中的步骤S130的流程示意图;
图5为图2所示实施例中的步骤S140中的一种获取目标数据的流程示意图;
图6是图2所示实施例中的步骤S140中的另一种获取目标数据的流程示意图;
图7是图2所示实施例中的步骤S140中的将目标数据显示在交互界面上的流程示意图;
图8是本申请的一示例性实施例示出的项目接入配置示意图;
图9是本申请的一示例性实施例示出的协议导入的界面示意图;
图10是本申请的另一示例性实施例示出的一种数据处理方法的流程图;
图11是本申请的一示例性实施例提供的一种数据处理方法的整体框架图;
图12是本申请的一示例性实施例示出的可视化展示的数据库表中的数据的界面示意图;
图13是本申请的另一示例性实施例示出的得到目标数据的流程示意图;
图14是本申请的一示例性实施例示出的编译得到tcaplus.so的流程示意图;
图15是本申请的一示例性实施例示出的一种数据处理装置的示意图;
图16示出了适于用来实现本申请实施例的电子设备的计算机系统的结构示意图。
具体实施方式
这里将详细地对示例性实施例执行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
还需要说明的是:在本申请中提及的“多个”是指两个或者两个以上。“和/或”描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
在此,介绍与本申请涉及的缩略词和关键术语定义:
协议,本申请实施例中指的游戏数据库的数据格式网络协议是指计算机网络中进行数据交换而建立的规则、标准或约定的集合。协议是用来描述进程之间信息交换数据时的规则术语。在计算机网络中,两个相互通信的实体处在不同的地理位置,其上的两个进程相互通信,需要通过交换信息来协调它们的动作达到同步,而信息的交换必须按照预先共同约定好的规则进行。
Pb,Protocol Buffer(协议缓冲区),Google(谷歌公司)开源的协议格式。
TDR:TSF4G Data Represention,腾讯公司游戏自研的协议格式。
Tcaplus:游戏数据库,是腾讯公司专为游戏设计的分布式NoSQL数据存储服务。
请参阅图1,图1是本申请涉及的一种实施环境的示意图。该实施环境包括终端10、游戏数据库20,终端10和游戏数据库20之间通过有线或者无线网络进行通信。
其中,终端10上运行有可视化编辑工具,该可视化编辑工具用于展示交互界面,当接入新游戏项目时,通过所述交互界面接收所述新游戏项目的协议文件,对协议文件进行编译,以生成以预设编程语言编写的代码文件;根据所述代码文件将所述游戏数据库的应用程序接口编译为动态链接库文件,当通过交互界面接收到针对所述数据库表中的数据的编辑请求时,调用所述动态链接库文件,以访问所述应用程序接口,并通过所述应用程序接口获取所述数据库表中的与所述编辑请求对应的目标数据,将所述目标数据显示在所述交互界面上。
游戏数据库,用于通过数据库表存储游戏项目对应的数据。
其中,可视化编辑工具可以是测试应用、网站或平台,运行在终端10上,终端10可以是智能手机、平板、笔记本电脑、计算机、智能语音交互设备、智能家电、车载终端等电子设备;游戏数据库20可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN(Content Delivery Network,内容分发网络)以及大数据和人工智能平台等基础云计算服务的云服务器,本处不对此进行限制。
如图2所示,图2是根据一示例性实施例示出的一种数据处理方法的流程图。该方法可以应用于图1所示的实施环境,并由图1所示实施例环境中的终端具体执行。该数据处理方法可以包括步骤S110至步骤S140,详细介绍如下:
S110、展示交互界面,当接入新游戏项目时,通过交互界面接收新游戏项目的协议文件,协议文件用于定义新游戏项目中的数据库表,数据库表存储于游戏数据库中。
在本申请的一个实施例中,交互界面是人和计算机进行信息交换的通道,用户通过交互界面向计算机输入信息、进行操作,计算机则通过交互界面向用户提供信息,以供阅读、分析和判断。当展示交互界面后,当接入新游戏项目时,通过交互界面接收新游戏项目的协议文件;其中,新游戏项目指的是游戏,接入新游戏项目指的是添加新游戏项目的相关信息,且接入新游戏项目可以是通过交互界面接入,例如在交互界面上新增该新游戏项目的服务器名、游戏数据库中的集群的接入ID,表格组ID、接入地址等;其中,集群是游戏数据库的基础管理单元,其负责为业务提供独立的数据存储服务;表格组是游戏数据库的逻辑隔离方案,其代表了一个数据分区,可将不同的表隔离开;连接数据库时需要使用到表格组ID;接入新游戏项目也可以是游戏服务器将新游戏项目的相关内容发送给终端,进而终端接收相关内容,获取新游戏项目的信息。
在接入新游戏项目后,通过交互界面接收新游戏项目的协议文件,例如用户通过交互界面上的控件导入该新游戏项目的协议文件,进而客户端终端接收新游戏项目的协议文件;该协议文件用于定义新游戏项目中的数据库表,数据库表示表是数据库中用来存储数据的对象,是有结构的数据的集合,且从游戏业务角度来看,一张表可负责一个业务模块的一段相关数据集合,例如用户表、道具表;而则协议文件用于定义数据库表的表结构,以及数据库表支持的数据协议,表结构包括表名、表中的字段和表的记录三个部分;其中,多个同一对象字段值的集合,称之为记录;字段描述了指定对象的某一特征。
在本申请的一个实施例中,数据库表存储于游戏数据库中,可选的,游戏数据库包括TcaplusDB,TcaplusDB中的数据库表支持的数据存储协议包括tdr协议和ProtocolBuffers(pb)协议。
S120、对协议文件进行编译,以生成以预设编程语言编写的代码文件。
在本申请的一个实施例中,对协议文件进行编译,将协议文件生成常用的编程语言编写的代码文件,其中,该预设编译语言与该协议文件的数据协议格式对应;具体可以根据协议文件对应的官方工具将协议文件编译为c/c++、py等语言编写的代码文件,其中协议文件对应的官方工具预先存储在终端中。
例如协议文件为tdr协议文件时,则通过TcaplusDB提供的相关接口编译成以c语言编写的代码文件;当协议文件为pb协议文件时,则通过protobuf提供的编译工具编译成以py语言编写的代码文件。
S130、根据代码文件将游戏数据库的应用程序接口编译为动态链接库文件。
在本申请的一个实施例中,动态链接库文件,是一种不可执行的二进制程序文件,它允许程序共享执行特殊任务所必需的代码和其他资源,用于向程序提供代码、数据或函数,进而程序可根据动态链接库文件中的指令打开、启用、查询、禁用和关闭驱动程序;因此通过根据代码文件将游戏数据库的API接口编译为动态链接库文件,以便于后续可视化工具对应的程序调用动态链接库文件中的指令访问游戏数据库的API接口。
S140、当通过交互界面接收到针对数据库表中的数据的编辑请求时,调用动态链接库文件,以访问应用程序接口,并通过应用程序接口获取数据库表中的与编辑请求对应的目标数据,将目标数据显示在交互界面上。
在本申请的一个实施例中,通过交互界面接收编辑请求,该编辑请求是用于请求该新游戏项目中的数据库表中的数据,终端会调用动态链接库文件,访问API(ApplicationProgramming Interface,应用程序接口),通过该API接口可以访问数据库表中的与编辑请求对应的目标数据。
可以理解的是,游戏数据库中包括多个数据库表,用户通过操作触发编辑请求时,该编辑请求中携带有数据库表的标识,例如在交互界面上选择特定的数据库表,进而终端根据特定数据库表的标识确定是针对哪个数据库表中的数据的编辑请求。
其中编辑请求包括但不限于查询、修改或删除数据库表中的数据,例如当编辑请求为查询a数据时,则通过API接口获取数据库表中的与a数据对应的目标数据,如a数据的值,将a数据的值显示在交互界面上。当编辑请求为删除b数据时,则通过API接口先删除b数据,然后将删除b数据后的数据库表的数据作为目标数据显示在交互界面上。当编辑请求为修改c数据时,则通过API接口修改c数据,然后将修改后的c数据作为目标数据显示在交互界面。
在本实施例中,可通过交互界面接收编辑请求,调用动态链接库文件,访问应用程序接口,进而可操作数据库表中的数据,用户可以很方便对数据库表中的数据进行构造,如查询、修改和删除,还可通过操作数据库表中的数据进行游戏项目的复杂场景模拟,简单明了。
可以理解的是,不同的游戏项目中数据库表的表名可能相同,但表结构不同,为了区分不同的数据库表,便于后续获取到正确的数据库表,本申请的一个实施例中,需要建立游戏项目与数据库表的对应关系;因此,在对协议文件进行编译,以生成以预设编程语言编写的代码文件之前,方法还包括:
当新游戏项目的数据库表与其他游戏项目的数据库表的表名相同,且数据库表的表结构不同时,建立新游戏项目与数据库表的映射关系,并将映射关系存储在游戏数据库中。
在本申请的实施例中,将新游戏项目的数据库表与其他已经接入的游戏项目的数据表进行比较,确定新游戏项目的数据库表与其他游戏项目的表名是否相同,且数据库表的表结构是否不同;例如新游戏项目A有个用户数据库表userinfo,B游戏也有一个用户数据库表userinfo,但由于A游戏与B游戏不同,对应的表结构也不同,因此可以建立A与A的用户数据库表的映射关系,B与B的用户数据库表的映射关系。
可选的,可以根据预设规则建立新游戏项目与数据库表的映射关系,例如为数据库表设置标识,建立新游戏项目的ID与数据库表的标识的映射关系,例如项目ID-userinfo;当然还可以根据其他规则建立新游戏项目与数据库表,只要能通过建立好的映射关系找到与新游戏项目对应的数据库表。
将建立的映射关系存储在游戏数据库中,进而在访问游戏数据库时,可以基于映射关系找到对应的数据库表;在本申请的另一实施例中,也可以将映射关系存储在终端。
在本申请的一个实施例中,如图3所示,图3是图2所示实施例中的步骤S120的流程示意图,包括:
S121、根据映射关系对数据库表的表名进行替换,生成新的协议文件。
在本申请的一个实施例中,在建立新游戏项目与数据库表的映射关系之后,可以基于映射关系确定与新游戏项目对应的数据库表,为了后续能快速到的新游戏项目的数据库表,可以根据映射关系对数据库表的表名进行替换,例如在数据库表的表名中加上游戏项目的ID,例如将A游戏的数据库表名替换A_userinfo;由于协议文件定义了数据库表的表结构,将数据库的表名替换后,协议文件也发生变化,可得到新的协议文件。
S122、编译新的协议文件,以生成以预设编程语言编写的代码文件。
编译新的协议文件,具体通过协议文件的对应的官方工具将新的协议文件转换为预设编程语言编写的代码文件。
可以理解的是,新的协议文件与旧协议文件的区别在于数据库表的表名,因此可以根据旧协议文件的数据协议格式将新的协议文件转换为代码文件,例如通过protobuf提供的编译工具编译成以py语言编写的代码文件。
可选的,代码文件包括源文件(.c)和头文件(.h)。
在本申请一个实施例中,如图4所示,图4是图2所示实施例中的步骤S130的流程示意图,包括:
S131、将代码文件添加至游戏数据库中,以使游戏数据库的应用程序接口调用代码文件。
应当理解的是,当生成代码文件之后,将代码文件添加至游戏数据库中的,以便于游戏数据库的API接口可以调用代码文件,例如游戏数据库的API接口调用代码文件,则可以确定对应的数据库表。
S132、封装调用代码文件后的应用程序接口,得到目标接口。
在游戏数据库的API接口调用代码文件后,对API接口进行封装,即对游戏数据库的API接口结合代码文件进行封装得到目标接口。
可选的,通过代码生成器对封装调用代码文件后的应用程序接口得到目标接口;例如通过SWIG(Simplified Wrapper and Interface Generator,简化包装器和接口生成器),SWIG本质上是个代码生成器,为C/C++程序生成到其他语言的包装代码(wrappercode),这些包装代码里会利用各语言提供的CAPI,将C/C++程序中的内容暴露给相应语言。
可选的,终端中预先存储了代码生成器,代码生成器只是针对单个项目的,当接入一个新的游戏项目,上传协议文件后,将更名后,针对所有的游戏项目,更新代码生成器的描述文件,即重新生成描述文件,该描述文件主要是swig的配置文件,主要是可暴露给终端调用的c++接口的配置;其中更新描述文件可以是引入项目协议文件产生.h头文件即可。
S133、将目标接口编译为动态链接库文件。
在本申请的一个实施例中,封装得到目标接口后,通过自动化构建工具将目标接口编译为动态链接库文件,例如使用scons(scons是一个开放源码、以Python语言编码的自动化构建工具)构建产生动态链接库文件。
如图5所示,图5为图2所示实施例中的步骤S140中的获取目标数据的流程示意图,通过应用程序接口获取数据库表中的与编辑请求对应的目标数据,包括:
S141、根据数据库表的表结构,对编辑请求所携带的请求数据进行分析,得到请求数据的字段类型。
在本申请一个实施例中,编辑请求中携带有请求数据,该请求数据用于表征用户想要请求的请求内容,例如编辑请求为查询A数据的值时,则请求数据为A数据;编辑请求为删除B数据时,则请求数据为B数据。
如前所述,数据库表的表结构包括表名、表中的字段和表的记录;由于不同数据库表支持的数据协议不同,则不同数据库表中字段的字段类型不同,而请求数据针对的是数据库表中的数据,因此,在本申请的一个实施例中,当接收到编辑请求时,需要根据数据库表的表结构,对编辑请求携带的请求数据进行分析得到请求数据的字段类型,即确定请求的请求数据是否对应数据库表中的数据,以及在请求数据对应某个数据库表时,根据请求数据的字段类型来确定采用哪种方式确定请求数据的目标数据。
可选的,对编辑请求携带的请求数据进行分析之后,对请求数据进行序列化操作,将请求数据处理成连续的二进制流数据,以符合数据库表中的数据格式。
S142、若请求数据的字段类型为跨平台多语言数据表示协议中的非序列化结构数据格式的大文件字段,遍历数据库表中的字段值,并将与请求数据对应的字段值作为目标数据。
如前所述,数据库表支持的数据协议包括tdr协议,pb协议以及tdr协议中包含protobuf blob字段;若请求数据的字段类型为tdr协议中非protobuf blob字段,则直接遍历数据库表中的字段,并将与请求数据对应的字段作为目标数据;例如编辑请求为查询A数据,A数据的字段类型为tdr协议中非protobuf blob字段,则直接遍历数据库表中的字段值,若遍历得到A数据对应的字段,且该字段为x,则x作为目标数据。
又例如编辑请求为修改B数据,B数据的字段类型为tdr协议中非protobuf blob字段,则直接遍历数据库表中的字段,当遍历得到B数据对应的字段值,则当前B数据对应的字段的值y修改为值z,并将修改后的字段的值z作为目标数据。
在本申请的一个实施例中,将新游戏项目与数据库表的映射关系存储在数据库表中,该映射关系还包括该新游戏项目对应的协议文件的协议路径,如图6所示,图6为图2所示实施例中的步骤S140中的另一种获取目标数据的流程示意图,包括:
S143、若请求数据的字段类型为跨平台多语言数据表示协议中的序列化结构数据格式的大文件字段,则根据数据库中的映射关系的协议路径,确定与序列化结构数据格式的大文件字段对应的协议文件。
需要说明的是,针对新游戏项目的协议文件为包括嵌套pb协议的tdr协议,当将新游戏项目与数据库表的映射关系存储在游戏数据库中时,则映射关系还包括tdr协议的协议路径,该tdr协议嵌套pb协议,则该数据库表中的字段类型可能为tdr协议中protobufblob字段。
在本申请的一个实施例中,若请求数据的字段类型为tdr协议中protobuf blob字段,则从游戏数据库中拉取新游戏项目与数据库表的映射关系,然后根据映射关系的tdr协议的协议路径,找到与protobuf blob字段对应tdr协议中嵌套的pb协议文件。
S144、根据协议文件对请求数据进行解析,得到请求数据对应的字段名和字段值的对应关系,根据对应关系在数据库表中确定字段名对应的字段值,将字段值作为目标数据。
当找到pb协议文件之后,引入pb协议文件对请求数据进行解析,得到请求数据对应的字段名、字段值的对应关系,例如请求数据为A数据,则得到A数据的字段名a-字段值a’的对应关系,进而可以根据该对应关系在数据库表中确定字段名a对应的字段值a’,则将字段值a’作为目标数据。
需要说明的是,在本申请的一个实施例中,为了确保显示在交互界面上的目标数据更加准确,如图7所示,图7是图2所示实施例中的步骤S140中的将目标数据显示在交互界面上的流程示意图,包括:
S145、对目标数据进行序列化操作得到二进制数据;
S146、将二进制数据进行反序列化操作后,在交互界面进行可视化展示。
可以理解的是,终端在后台获取该目标数据之后,需要将目标数据传输到交互界面进行显示,具体需要将目标数据进行序列化操作,以将目标数据处理成连续的二进制流数据,用于传输;然后对二进制数据进行反序列化操作,以将二进制数据流按照数据库表的定义,解析成协议文件对应的数据,进而在交互界面进行可视化显示。
为了便于理解,本申请的一实施例中,以一个具体的例子对数据处理方法进行说明,其中游戏数据库为tcaplusDB;如图8所示,图8为本申请的一示例性实施例示出的项目接入配置示意图,通过交互界面接入新游戏项目,添加新游戏项目的服务器名,集群的接入ID(TargetAppld),表格组ID(Targetzoneld),接入地址(Targeturl);如图9所示,图9为本申请的一示例性实施例示出的协议导入的界面示意图,即通过交互界面接收用户导入的新游戏项目的协议文件,针对tdr协议中包含protobuf blob字段的协议,即tdr嵌套pb格式,需要先上传pb文件。
如图10所示和图11所示,图10为本申请的实施例提供的一种数据处理方法交互流程图,图11为本申请的实施例提供的一种数据处理方法的整体框架图;该数据处理方法由终端上运行的数据可视化编辑平台执行,该数据可视化编辑平台以python(计算机编程语言)编写的,方法包括:
S1001、在数据可视化编辑平台上传协议文件,同时支持tdr协议和pb协议文件。
通过如图9所示的交互界面上传协议文件,该协议文件包括tdr协议和/或pb协议文件;
S1002、数据可视化编辑平台接收到协议文件后,自助编译tdr、pb协议文件,并自动识别库表;
接收到协议文件后,主要是通过tcaplus提供相关接口编译成c文件,pb协议则通过protobuf提供的编译工具编译成py文件;自动识别库表是指识别协议文件中的数据库表及其结构。
其中,数据库表库表的结构以协议文件的形式保存;tdr或者pb协议都有固定的结构(协议规则),只是不同的格式存储,通过识别库表,可以了解协议规则,进而后续可以一一对应起来解析。
S1003、数据可视化编辑平台根据编译的协议和识别的库表,重新编译得到tcaplus.so。
编译得到c文件、py文件后,tcaplus的api接口结合编译后的c文件或py文件进一步封装,通过swig转化c/c++供python调用的接口,然后scons根据对应配置文件编译产生tcaplus.so。
如图11所示,上述步骤S1001-S1003对应图11所示的左侧部分,swig描述文件、tcaplus接口封装、tcaplus-api是数据可视化编辑平台使用的开发接口;其中swig描述文件描述的是swig的配置文件,主要是可暴露给python调用的c++接口的配置,Tcplus封装是指在原tcaplus-api的基础上通过scons进一步编译,提供更为方便快捷的tcaplus.so提供使用;tcaplus-api为tcaplus的API接口。
S1004、数据可视化编辑平台根据请求调用tcaplus-api返回相关数据;
接收到查询/修改/删除请求时,python调用tcaplus.so,从而访问api接口,获取与请求对应的相关数据。
S1005、相关数据通过序列化和反序列化在数据可视化编辑平台进行可视化展示。
如图11所示,上述步骤S1004-S1005对应图11所示的右侧部分,当用户需要请求数据库表的数据,在数据可视化编辑平台上直接选择相关环境和数据库表名称,其中,环境是项目私有的,在游戏中一般是指服务器环境。游戏后台部署在不同服务器中,相关用户数据不同。数据可视化编辑平台接收查询/修改/删除请求调取自助编译的tcaplus.so,将请求对应的请求数据进行序列化操作,从tcaplus数据库中确定请求数据对应的目标数据,目标数据经过序列化和反序列化操作后展示在数据可视化编辑平台的交互界面。
如图12所示,图12是本申请的一示例性实施例示出的可视化展示的数据库表中的数据的界面示意图,通过环境选择和库表选择确定针对哪个数据库表的数据,通过“查询数据”、“修改数据”和“删除数据”控件对选择的数据库表中的数据进行查询、修改或删除,最后数据库表中的数据可以显示在“库表数据”对应的显示区域内,进而实现用户可以对可视化展示的数据进行修改、查询和删除操作。
可以理解的是,数据可视化编辑平台可以存储用户的操作记录,以便于用户下次请求相同数据库表的数据时,可以直接根据记录调取目标数据进行展示。
需要说明的是,上传的协议文件可以是tdr协议中包含类型为protobuf blob字段的协议,即数据库表中的字段为tdr结构中混合pb编码的字段,为了动态解析tdr结构中混合pb编码的字段,如图13所示,图13是本申请的另一示例性实施例示出的得到目标数据的流程示意图;下面对如何得到目标数据的过程进行说明。
首先协议文件上传后,根据不同项目,设计库表的对应规则,建立项目、库表的映射关系,并保存在数据库DB中。
当用户在查询数据库表的数据时,数据可视化编辑平台的后台根据数据库表的表类型对查询的请求数据解析。
当查询的请求数据是针对tdr协议中非protobuf blob字段,直接遍历数据库表中的数据,并对查询的请求数据进行赋值得到目标数据。
当查询的请求数据是针对tdr协议中protobuf blob字段,则从数据库DB拉取映射关系,映射关系不仅仅是项目-库表,还包含了协议路径,根据映射关系的协议路径,找到对应的pb协议文件,动态引入pb文件解析,得到请求数据对应的字段名、字段值对应关系,根据对应关系确定从数据库表中确定字段值作为目标数据。
需要说明的是,不同项目中数据库表的表名相同,但数据库表的表结构不同,为了兼容不同项目中表名相同,结构不同的情况。如图14所示,图14是本申请的另一示例性实施例示出的编译得到tcaplus.so的流程示意图;下面对如何编译得到tcaplus.so进行具体说明。
如图14所示,首先根据上传的协议文件,例如tdr协议,tdr协议是以xml形式保存,按照协商的规则(如映射关系)进行表名替换,产生新的xml文件;重新编译xml文件,转为c文件或py文件,例如编译xml产生对应的c++代码(.c和.h代码文件),更新swig描述文件,为后续编译得到tcaplus.so做准备。
将库表文件产生的c++代码动态注入到tsf4g提供tcaplus编译模块,调用scons重新构建产生新的tcaplus.so;也就是说,xml库表自助编译成对应的.c和.h文件,tcaplus的api接口结合编译后的.c和.h进一步封装,通过swig转化c/c++供python调用的接口,然后scons根据对应配置文件编译产生tcaplus.so。
数据可视化编辑平台是python编写,python可以直接调用tcaplus.so,但是为了简化C/C++和其他脚本语言的交互,通过swig将新的so文件编译产生对应的py文件供数据可视化编辑平台调用,即利用swig来简化python与tcaplus的c/c++交互。
游戏主要采用数据存储方式为tcaplus,数据协议主要是tdr、pb以及tdr协议中包含类型为protobuf blob字段的协议;针对tdr协议特别是tdr协议中包含protobuf blob字段的没有很方便的可视化工具进行tcaplus数据编辑(包括查询、修改、删除)。
为了解决上述问题。本本实施例提供的数据处理方法通过自动解析协议、自动识别协议字段类型,自动编译tdr协议、pb协议最终自动编译成对应so库。还提供了可视化操作界面,当用户选择了相关环境和库表名称,操作DB数据库,如查询、修改、删除等操作DB数据库的数据时,如此,可以通过调用so库,访问api获取tcaplus数据,并进行序列化反序列化操作,输出显示到数据可视化编辑平台的页面。即将对应库表的数据展示出来,进而测试同学可以方便的进行数据构造,包括但不限于游戏人物相关数据修改构造、游戏战绩匹配数据构造等极大提升测试效率。测试同学还可以方便的进行复杂场景模拟,比如匹配算法匹配机制场景模拟、协议自动化测试等,方便并极大的提高测试效率。
介绍本申请的装置实施例,可以用于执行本申请上述实施例中的数据处理方法。对于本申请装置实施例中未披露的细节,请参照本申请上述的数据处理方法的实施例。
本申请实施例提供了一种数据处理装置,如图15所示,包括展示模块1510、接收模块1520、文件编译模块1530,接口编译模块1540和调用模块1550;
展示模块1510,用于展示交互界面;
接收模块1520,用于当接入新游戏项目时,接收新游戏项目的协议文件,协议文件用于定义新游戏项目中的数据库表,数据库表存储于游戏数据库中;
文件编译模块1530,用于对协议文件进行编译,以生成以预设编程语言编写的代码文件;
接口编译模块1540,用于根据代码文件将游戏数据库的应用程序接口编译为动态链接库文件;
调用模块1550,用于当通过交互界面接收到针对数据库表中的数据的编辑请求时,调用动态链接库文件,以访问应用程序接口,并通过应用程序接口获取数据库表中的与编辑请求对应的目标数据;
展示模块1510,还用于将目标数据显示在交互界面上。
在本申请的一个实施例中,基于前述方案,数据处理装置还包括建立模块,建立模块用于当新游戏项目的数据库表与其他游戏项目的数据库表的表名相同,且数据库表的表结构不同时,建立新游戏项目与数据库表的映射关系,并将映射关系存储在游戏数据库中。
在本申请的一个实施例中,基于前述方案,调用模块1550包括分析单元和赋值单元;分析单元用于根据数据库表的表结构,对编辑请求所携带的请求数据进行分析,得到请求数据的字段类型;赋值单元用于若请求数据的字段类型为跨平台多语言数据表示协议中的非序列化结构数据格式的大文件字段,遍历数据库表中的字段值,并将与请求数据对应的字段值作为目标数据。
在本申请的一个实施例中,基于前述方案,映射关系还包括协议文件的协议路径,赋值单元还用于若请求数据的字段类型为跨平台多语言数据表示协议中的序列化结构数据格式的大文件字段,则根据数据库中的映射关系的协议路径,确定与序列化结构数据格式的大文件字段对应的协议文件,根据协议文件对请求数据进行解析,得到请求数据对应的字段名和字段值的对应关系,根据对应关系在数据库表中确定字段名对应的字段值,将字段值作为目标数据。
在本申请的一个实施例中,基于前述方案,文件编译模块1530进一步用于根据映射关系对数据库表的表名进行替换,生成新的协议文件;编译新的协议文件,以生成以预设编程语言编写的代码文件。
在本申请的一个实施例中,基于前述方案,接口编译模块1540进一步用于将代码文件添加至游戏数据库中,以使游戏数据库的应用程序接口调用代码文件;封装调用代码文件后的应用程序接口,得到目标接口;将目标接口编译为动态链接库文件。
在本申请的一个实施例中,基于前述方案,展示模块1510进一步用于对目标数据进行序列化操作得到二进制数据;将二进制数据进行反序列化操作后,在交互界面进行可视化显示。
本实施例提供的数据处理装置,展示交互界面,并通过交互界面接收新游戏项目的协议文件,通过对协议文件进行编译,以生成代码文件,进而通过代码文件对游戏数据库的应用程序接口编译为动态链接库文件,使得可调用该动态链接库文件,访问应用程序接口,获取游戏数据库中的数据后输出显示在交互界面,实现游戏数据库中的数据可视化,将对应数据库库表的数据展示出来,进而测试同学可以方便的进行数据构造,比如游戏人物相关数据修改构造、游戏战绩匹配数据构造、压测批量构造模拟账户数据,极大提升测试效率。
需要说明的是,上述实施例所提供的装置与上述实施例所提供的方法属于同一构思,其中各个模块和单元执行操作的具体方式已经在方法实施例中进行了详细描述,此处不再赘述。
本申请的实施例还提供了一种电子设备,包括一个或多个处理器,以及存储装置,其中,存储装置,用于存储一个或多个程序,当一个或多个被一个或多个处理器执行时,使得所述电子设备实现如上所述的数据处理方法的步骤,包括:展示交互界面,当接入新游戏项目时,通过交互界面接收新游戏项目的协议文件,协议文件用于定义新游戏项目中的数据库表,数据库表存储于游戏数据库中;对协议文件进行编译,以生成以预设编程语言编写的代码文件;根据代码文件将游戏数据库的应用程序接口编译为动态链接库文件;当通过交互界面接收到针对数据库表中的数据的编辑请求时,调用动态链接库文件,以访问应用程序接口,并通过应用程序接口获取数据库表中的与编辑请求对应的目标数据,将目标数据显示在交互界面上。
通过本申请实施例提供的电子设备,新项目接入,只需要上传对应的协议文件,即可针对游戏数据库的数据库表中的数据进行查询、增加、删除等操作,方便并极大的提高测试效率。
图16示出了适于用来实现本申请实施例的电子设备的计算机系统的结构示意图。
需要说明的是,图16示出的电子设备的计算机系统1600仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图16所示,计算机系统1600包括中央处理单元(Central Processing Unit,CPU)1601,其可以根据存储在只读存储器(Read-Only Memory,ROM)1602中的程序或者从储存部分1608加载到随机访问存储器(Random Access Memory,RAM)1603中的程序而执行各种适当的动作和处理,例如执行上述实施例中所述的方法。在RAM 1603中,还存储有系统操作所需的各种程序和数据。CPU 1601、ROM 1602以及RAM 1603通过总线1604彼此相连。输入/输出(Input/Output,I/O)接口1605也连接至总线1604。
以下部件连接至I/O接口1605:包括键盘、鼠标等的输入部分1606;包括诸如阴极射线管(Cathode Ray Tube,CRT)、液晶显示器(Liquid Crystal Display,LCD)等以及扬声器等的输出部分1607;包括硬盘等的储存部分1608;以及包括诸如LAN(Local AreaNetwork,局域网)卡、调制解调器等的网络接口卡的通信部分1609。通信部分1609经由诸如因特网的网络执行通信处理。驱动器1610也根据需要连接至I/O接口1605。可拆卸介质1611,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1610上,以便于从其上读出的计算机程序根据需要被安装入储存部分1608。
特别地,根据本申请的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本申请的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的计算机程序。在这样的实施例中,该计算机程序可以通过通信部分1609从网络上被下载和安装,和/或从可拆卸介质1611被安装。在该计算机程序被中央处理单元(CPU)1601执行时,执行本申请的系统中限定的各种功能。
需要说明的是,本申请实施例所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)、闪存、光纤、便携式紧凑磁盘只读存储器(Compact Disc Read-Only Memory,CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的计算机程序。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的计算机程序可以用任何适当的介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。其中,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本申请实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现,所描述的单元也可以设置在处理器中。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定。
本申请的另一方面还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如前所述的方法。该计算机可读存储介质可以是上述实施例中描述的电子设备中所包含的,也可以是单独存在,而未装配入该电子设备中。
本申请的另一方面还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各个实施例中提供如前所述的方法。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本申请的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本申请实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、触控终端、或者网络设备等)执行根据本申请实施方式的方法。
本领域技术人员在考虑说明书及实践这里公开的实施方式后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。
上述内容,仅为本申请的较佳示例性实施例,并非用于限制本申请的实施方案,本领域普通技术人员根据本申请的主要构思和精神,可以十分方便地进行相应的变通或修改,故本申请的保护范围应以权利要求书所要求的保护范围为准。
Claims (11)
1.一种数据处理方法,其特征在于,包括:
展示交互界面,当接入新游戏项目时,通过所述交互界面接收所述新游戏项目的协议文件,所述协议文件用于定义所述新游戏项目中的数据库表,所述数据库表存储于游戏数据库中;
对所述协议文件进行编译,以生成以预设编程语言编写的代码文件;
根据所述代码文件将所述游戏数据库的应用程序接口编译为动态链接库文件;
当通过交互界面接收到针对所述数据库表中的数据的编辑请求时,调用所述动态链接库文件,以访问所述应用程序接口,并通过所述应用程序接口获取所述数据库表中的与所述编辑请求对应的目标数据,将所述目标数据显示在所述交互界面上。
2.根据权利要求1所述的方法,其特征在于,所述对所述协议文件进行编译,以生成以预设编程语言编写的代码文件之前,所述方法还包括:
当所述新游戏项目的数据库表与其他游戏项目的数据库表的表名相同,且数据库表的表结构不同时,建立所述新游戏项目与所述数据库表的映射关系,并将所述映射关系存储在所述游戏数据库中。
3.根据权利要求2所述的方法,其特征在于,所述通过所述应用程序接口获取所述数据库表中的与所述编辑请求对应的目标数据,包括:
根据所述数据库表的表结构,对所述编辑请求所携带的请求数据进行分析,得到所述请求数据的字段类型;
若所述请求数据的字段类型为跨平台多语言数据表示协议中的非序列化结构数据格式的大文件字段,遍历所述数据库表中的字段值,并将与所述请求数据对应的字段值作为所述目标数据。
4.根据权利要求3所述的方法,其特征在于,所述映射关系还包括所述协议文件的协议路径,所述方法还包括:
若所述请求数据的字段类型为跨平台多语言数据表示协议中的序列化结构数据格式的大文件字段,则根据所述数据库中的映射关系的协议路径,确定与所述序列化结构数据格式的大文件字段对应的协议文件;
根据所述协议文件对所述请求数据进行解析,得到所述请求数据对应的字段名和字段值的对应关系,根据所述对应关系在所述数据库表中确定所述字段名对应的字段值,将所述字段值作为所述目标数据。
5.根据权利要求2所述的方法,其特征在于,所述对所述协议文件进行编译,以生成以预设编程语言编写的代码文件包括:
根据所述映射关系对所述数据库表的表名进行替换,生成新的协议文件;
编译所述新的协议文件,以生成以预设编程语言编写的代码文件。
6.根据权利要求1所述的方法,其特征在于,所述根据所述代码文件将所述游戏数据库的应用程序接口编译为动态链接库文件包括:
将所述代码文件添加至所述游戏数据库中,以使所述游戏数据库的所述应用程序接口调用所述代码文件;
封装调用所述代码文件后的应用程序接口,得到目标接口;
将所述目标接口编译为所述动态链接库文件。
7.根据权利要求1-6任一项所述的方法,其特征在于,所述将所述目标数据显示在所述交互界面上包括:
对所述目标数据进行序列化操作得到二进制数据;
将所述二进制数据进行反序列化操作后,在所述交互界面进行可视化显示。
8.一种数据处理装置,其特征在于,包括:
展示模块,用于展示交互界面;
接收模块,用于当接入新游戏项目时,接收所述新游戏项目的协议文件,所述协议文件用于定义所述新游戏项目中的数据库表,所述数据库表存储于游戏数据库中;
文件编译模块,用于对所述协议文件进行编译,以生成以预设编程语言编写的代码文件;
接口编译模块,用于根据所述代码文件将所述游戏数据库的应用程序接口编译为动态链接库文件;
调用模块,用于当通过交互界面接收到针对所述数据库表中的数据的编辑请求时,调用所述动态链接库文件,以访问所述应用程序接口,并通过所述应用程序接口获取所述数据库表中的与所述编辑请求对应的目标数据;
所述展示模块,还用于将所述目标数据显示在所述交互界面上。
9.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,当所述一个或多个被所述一个或多个处理器执行时,使得所述电子设备实现如权利要求1-7任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,其上存储有计算机可读指令,当所述计算机可读指令被计算机的处理器执行时,使计算机执行权利要求1-7中的任一项所述的方法。
11.一种计算机程序产品,包括计算机指令,其特征在于,所述计算机指令被处理器执行时实现权利要求1-7中的任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210007957.3A CN114356341A (zh) | 2022-01-04 | 2022-01-04 | 一种数据处理方法、装置、设备、存储介质及产品 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210007957.3A CN114356341A (zh) | 2022-01-04 | 2022-01-04 | 一种数据处理方法、装置、设备、存储介质及产品 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114356341A true CN114356341A (zh) | 2022-04-15 |
Family
ID=81107844
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210007957.3A Pending CN114356341A (zh) | 2022-01-04 | 2022-01-04 | 一种数据处理方法、装置、设备、存储介质及产品 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114356341A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114996346A (zh) * | 2022-06-10 | 2022-09-02 | 艾嘉智能科技(天津)有限公司 | 可视化数据流处理方法、装置、电子设备及存储介质 |
CN115129325A (zh) * | 2022-06-29 | 2022-09-30 | 北京五八信息技术有限公司 | 一种数据处理方法、装置、电子设备及存储介质 |
CN116610310A (zh) * | 2023-05-31 | 2023-08-18 | 天津大学 | 一种基于Serverless架构的FaaS函数管理方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2436439A1 (en) * | 2002-08-02 | 2004-02-02 | Retrieval Dynamics Corporation | Remote database access apparatus, method and computer program product |
CN101639776A (zh) * | 2009-09-07 | 2010-02-03 | 陈小青 | 一种数据库访问和集成方法及其系统 |
CN105335432A (zh) * | 2014-08-11 | 2016-02-17 | 无锡华润微电子有限公司 | oracle数据库访问方法 |
US20160164953A1 (en) * | 2014-12-05 | 2016-06-09 | Vmware, Inc. | Runtime generation of application programming interfaces for remote procedure call services |
CN109522321A (zh) * | 2018-11-15 | 2019-03-26 | 北京锐安科技有限公司 | 一种数据库查询方法、装置、服务器及存储介质 |
-
2022
- 2022-01-04 CN CN202210007957.3A patent/CN114356341A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2436439A1 (en) * | 2002-08-02 | 2004-02-02 | Retrieval Dynamics Corporation | Remote database access apparatus, method and computer program product |
CN101639776A (zh) * | 2009-09-07 | 2010-02-03 | 陈小青 | 一种数据库访问和集成方法及其系统 |
CN105335432A (zh) * | 2014-08-11 | 2016-02-17 | 无锡华润微电子有限公司 | oracle数据库访问方法 |
US20160164953A1 (en) * | 2014-12-05 | 2016-06-09 | Vmware, Inc. | Runtime generation of application programming interfaces for remote procedure call services |
CN109522321A (zh) * | 2018-11-15 | 2019-03-26 | 北京锐安科技有限公司 | 一种数据库查询方法、装置、服务器及存储介质 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114996346A (zh) * | 2022-06-10 | 2022-09-02 | 艾嘉智能科技(天津)有限公司 | 可视化数据流处理方法、装置、电子设备及存储介质 |
CN115129325A (zh) * | 2022-06-29 | 2022-09-30 | 北京五八信息技术有限公司 | 一种数据处理方法、装置、电子设备及存储介质 |
CN115129325B (zh) * | 2022-06-29 | 2023-05-23 | 北京五八信息技术有限公司 | 一种数据处理方法、装置、电子设备及存储介质 |
CN116610310A (zh) * | 2023-05-31 | 2023-08-18 | 天津大学 | 一种基于Serverless架构的FaaS函数管理方法 |
CN116610310B (zh) * | 2023-05-31 | 2023-11-14 | 天津大学 | 一种基于Serverless架构的FaaS函数管理方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109840429B (zh) | 智能合约部署、调用方法和装置 | |
CN114356341A (zh) | 一种数据处理方法、装置、设备、存储介质及产品 | |
CN107766126B (zh) | 容器镜像的构建方法、系统、装置及存储介质 | |
US20030093420A1 (en) | Method and system for retrieving sharable information using a hierarchically dependent directory structure | |
CN111740948B (zh) | 数据包发布方法、动态更新方法、装置、设备及介质 | |
CN111427561A (zh) | 业务代码的生成方法、装置、计算机设备和存储介质 | |
CN109194714B (zh) | 一种文案推送方法、装置、终端设备及存储介质 | |
CA3198981A1 (en) | Constructing executable program code based on sequence codes | |
CN110806945B (zh) | 接口对接方法、装置和计算机可读介质 | |
CN110895471A (zh) | 安装包生成方法、装置、介质及电子设备 | |
US20070033570A1 (en) | Method and system for transforming a process flow | |
CN111176859A (zh) | 服务的调用方法、装置及电子设备 | |
CN108549537A (zh) | 基于Android终端的用户数据采集的方法及系统 | |
CN109144619A (zh) | 图标字体信息处理方法、装置及系统 | |
CN111506366A (zh) | 插件调用方法、装置、电子设备与存储介质 | |
CN117112060A (zh) | 组件库构建方法、装置、电子设备及存储介质 | |
CN112000334A (zh) | 页面开发方法、装置、服务器及存储介质 | |
CN113094776B (zh) | 可视化组件模型数据构建的方法、系统及电子设备 | |
CN113407165A (zh) | Sdk的生成和自升级方法、装置、可读介质和设备 | |
CN116048517B (zh) | 基于b/s架构应用系统的api接口生成方法、系统和装置 | |
CN112068879A (zh) | 基于配置化的客户端应用程序开发框架构建方法及装置 | |
CN116466927A (zh) | 批处理任务的代码生成方法、系统、电子设备及存储介质 | |
CN108415849A (zh) | 用于测试应用的方法和装置 | |
CN114398152A (zh) | 接口仿真服务调用方法及装置 | |
CN114579334A (zh) | 一种通信方法、装置、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |