CN108196844A - 信息处理方法、装置、电子设备及存储介质 - Google Patents

信息处理方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN108196844A
CN108196844A CN201810008972.3A CN201810008972A CN108196844A CN 108196844 A CN108196844 A CN 108196844A CN 201810008972 A CN201810008972 A CN 201810008972A CN 108196844 A CN108196844 A CN 108196844A
Authority
CN
China
Prior art keywords
title
dictionary
corresponding value
module
type
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
Application number
CN201810008972.3A
Other languages
English (en)
Inventor
苏正权
陈少杰
张文明
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Wuhan Douyu Network Technology Co Ltd
Original Assignee
Wuhan Douyu Network Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Wuhan Douyu Network Technology Co Ltd filed Critical Wuhan Douyu Network Technology Co Ltd
Priority to CN201810008972.3A priority Critical patent/CN108196844A/zh
Publication of CN108196844A publication Critical patent/CN108196844A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/35Creation or generation of source code model driven
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供了一种信息处理方法、装置、电子设备及存储介质,涉及计算机技术领域。该信息处理方法包括:基于运行时机制,获得目标模型中的第一成员变量的第一名称;从请求接口返回的第一字典中获取所述第一名称对应的值;判断所述第一名称对应的值是否为数值类型;在为是时,将所述第一名称对应的值与所述第一成员变量进行关联。该信息处理方法可以高效地实现字典转换为模型。

Description

信息处理方法、装置、电子设备及存储介质
技术领域
本发明涉及计算机技术领域,具体而言,涉及一种信息处理方法、装置、电子设备及存储介质。
背景技术
在目前的IOS客户端开发中,服务器端返回的JSON数据格式在开发中必须由字典开发转换为模型开发。而字典开发转换为模型开发,则需要从服务器端返回的字典转换为模型。
现有的将字典转为模型的方法是将请求接口返回的字典根据key一条一条获取value后,再由人工查找出该key在模型中对应的成员变量,然后将value与该成员变量对应。此种方法对于小规模的字典转换为模型时较为适用,但对于数据量大的字典,则存在处理慢的问题。
发明内容
有鉴于此,本发明实施例提供了一种信息处理方法、装置、电子设备及存储介质。
为了实现上述目的,本发明采用的技术方案如下:
第一方面,本发明实施例提供了一种信息处理方法,所述方法包括:基于运行时机制,获得目标模型中的第一成员变量的第一名称;从请求接口返回的第一字典中获取所述第一名称对应的值;判断所述第一名称对应的值是否为数值类型;在为是时,将所述第一名称对应的值与所述第一成员变量进行关联。
第二面,本发明实施例提供了一种信息处理装置,所述装置包括:名称获取模块、字典调取模块、第一判断模块以及第一执行模块,其中,所述名称获取模块用于基于运行时机制,获得目标模型中的第一成员变量的第一名称;所述字典调取模块用于从请求接口返回的第一字典中获取所述第一名称对应的值;所述第一判断模块用于判断所述第一名称对应的值是否为数值类型;所述第一执行模块用于在所述第一名称对应的值为数值类型时,将所述第一名称对应的值与所述第一成员变量进行关联。
第三方面,本发明实施例提供了一种电子设备,所述电子设备包括存储器和处理器,所述存储器存储有计算机指令,当所述计算机指令由所述处理器读取并执行时,使所述处理器执行上述第一方面提供的信息处理方法。
第四方面,本发明实施例提供了一种存储介质,所述存储介质中存储有计算机指令,其中,所述计算机指令在被读取并运行时执行上述第一方面提供的信息处理方法。
本发明实施例提供的信息处理方法、装置、电子设备及存储介质,通过基于运行时机制,获得目标模型中的第一成员变量的第一名称,然后从请求接口返回的第一字典中获取第一名称对应的值,再判断第一名称对应的值是否为数值类型,最后在该第一名称对应的值为数值类型时,将第一名称对应的值与第一成员变量进行关联。从而,该信息处理方法、装置、电子设备及存储介质可以实现一套自动化的字典转换为模型的方案,解决现有技术中无法于快速处理数据量大的字典转换为模型的问题。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1示出了本发明实施例提供的电子设备的方框示意图;
图2示出了本发明实施例提供的信息处理方法的流程图;
图3示出了本发明实施例提供的信息处理方法中步骤S110的流程图;
图4示出了本发明实施例提供的信息处理装置的模块图;
图5示出了本发明实施例提供的信息处理装置中名称获取模块的模块图。
具体实施方式
下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本发明的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
图1示出了一种可应用于本发明实施例中的电子设备的结构框图。如图1所示,电子设备100包括存储器102、存储控制器104,一个或多个(图中仅示出一个)处理器106、外设接口108等。这些组件通过一条或多条通讯总线/信号线116相互通讯。
存储器102可用于存储软件程序以及模块,如本发明实施例中的信息处理方法及装置对应的程序指令/模块,处理器106通过运行存储在存储器102内的软件程序以及模块,从而执行各种功能应用以及数据处理,如本发明实施例提供的信息处理方法。
存储器102可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。处理器106以及其他可能的组件对存储器102的访问可在存储控制器104的控制下进行。
外设接口108将各种输入/输出装置耦合至处理器106以及存储器102。在一些实施例中,外设接口108,处理器106以及存储控制器104可以在单个芯片中实现。在其他一些实例中,他们可以分别由独立的芯片实现。
可以理解,图1所示的结构仅为示意,电子设备100还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。图1中所示的各组件可以采用硬件、软件或其组合实现。
第一实施例
如图2示出了本发明实施例提供的信息处理方法的流程图。请参见图2,该方法包括:
步骤S110:基于运行时机制,获得目标模型中的第一成员变量的第一名称。
在IOS开发中,在获得从服务器端的请求接口获得返回的JSON数据后,需要将请求接口返回的字典转换为模型,以实现由字典开发转为模型开发。
在进行字典转换时,首先获得需要该字典需要转换为的目标模型。然后利用运行时机制的C语言API特性获得目标模型中的一个成员变量的名称。
在本发明实施例中,请参见图3,步骤S110可以包括:
步骤S111:获得所述目标模型中的所有成员变量。
在本发明实施例中,可以先获得目标模型的对象的所有成员变量。具体的,可以是利用class_copyIarList获得目标模型的对象的所有成员变量。
步骤S112:获得所述所有成员变量中的第一成员变量的指针。
在本发明实施例中,可以获取目标模型的对象的成员变量的指针以及数目。具体可以为,Ivar*ivarList=class_copyIvarList(self,&count)。
然后,可以取出所有成员变量中的第一成员变量的指针。
步骤S113:基于所述指针,利用运行时机制的底层API获得所述第一成员变量的第一名称。
在获得第一成员变量的指针后,可以根据取出的指针使用runtime(运行时机制)的底层API取出第一成员变量的名称。
具体可以是,NSString*name=[NSString stringWithUTF8String:ivar_getName(ivar)]。
从而,可以获得目标模型中的第一成员变量的第一名称,由于运行时机制的底层API本身的高效性,因此在获取第一成员变量的第一名称时较为的高效,可以使整个方案的运行效率提升。
步骤S120:从请求接口返回的第一字典中获取所述第一名称对应的值。
在获得第一成员变量的第一名称后,可以再从请求接口返回的第一字典中,获取该第一名称对应的值,以用于后续与成员变量建立对应关系。
步骤S130:判断所述第一名称对应的值是否为数值类型。
在获得第一成员变量的第一名称对应的值后,再判断第一名称对应的值是否为数值类型,例如基本数据类型或者字符等。
步骤S140:在为是时,将所述第一名称对应的值与所述第一成员变量进行关联。
在步骤S130判断出第一成员变量的第一名称对应的值为数值类型时,则可以将第一成员变量的第一名称对应的值直接赋予第一成员变量,完成第一名称对应的值与第一成员变量的关联。
在本发明实施例中,可以重复步骤S110至步骤S140的步骤,即依次获得上述目标模型的所有成员变量中其他成员变量的名称对应的值,然后在该值为数值类型时,将值赋予该成员变量。从而,可以完成了目标模型中所有成员变量的赋值,即完成了字典到模型的转换。
在实际的字典转换为模型时,存在着字典较为复杂的情况,例如字典嵌套有字典,字典中嵌套有数组等复杂的情况。因此,可以针对从请求接口获得的字典存在较为复杂的情况进行处理。
因此,在本发明实施例中,该信息处理方法还可以包括:
在为否时,判断所述第一名称对应的值是否为字典类型;在所述第一名称对应的值为所述字典类型时,获得所述第一名称对应的值的类;将所述第一名称对应的值转换为所述类对应的第一模型;将所述第一模型与所述第一成员变量进行关联。
可以理解的是,在上述字典中的第一成员变量的第一名称对应的值不为数值类型时,则可能存在该第一名称对应的值为字典类型的情况,即字典中的值为字典的情况。因此,可以判断该第一名称对应的值是否为字典类型。
在判断出上述第一名称对应的值为字典类型时,可以获得该第一名称对应的值的类。具体可以为,使用NSString*type=[NSString stringWithUTF8String:ivar_getTypeEncoding(ivar)],将这个NSString类型的type转换为一个类Class modelClass=NSClassFromString(type),从而获得上述第一名称对应的值的类。
然后,再对上述第一名称对应的至进行转换,获得上述第一名称对应的值的类的第一模型。
具体的,将第一名称对应的值转换为上述类对应的第一模型,可以是,基于步骤S110至步骤S140的方法进行转换。
可以理解的是,第一名称对应的值亦是一个字典,在该字典中没有嵌套其他字典或者数组时,即字典中的值全部为数值类型时,则可以是递归调用步骤S110至步骤S140的方法,将模型中每个成员变量的名称对应的值分别与每个成员变量对应,即将每个成员变量的名称对应的值分别赋值于每个成员变量,完成该第一名称对应的值转换为模型。
另外,在第一名称对应的值中,再嵌套有字典时,则可以递归调用在为否时,判断值是否为字典类型的步骤,至将所述第一模型与所述第一成员变量进行关联的步骤,即再将嵌套的所有字典转换为模型。
从而,按照上述步骤,可以实现对字典中嵌套有字典的情况进行处理,将字典中嵌套的字典转换为模型中嵌套模型。
在将该第一名称对应的值转换为第一模型后,再将第一模型与第一成员变量关联。
在本发明实施例中,重复上述步骤,则可以将上述请求接口返回的第一字典中的所有值转换为模型,并与对应的成员变量关联,实现对第一字典的转换。
在本发明实施例中,该信息处理方法还可以包括:
在所述第一名称对应的值不为所述字典类型时,判断所述第一名称对应的值是否为数组;在所述第一名称对应的值为所述数组时,判断所述数组装载的数据类型是否为字典类型;在所述数组装载的数据类型为所述字典类型时,将所述数组中的每个字典转换为模型,从而获得模型数组;将所述模型数组与所述第一成员变量进行关联。
可以理解的是,在上述判断出第一名称的值不为字典类型时,则可能该第一名称的值为数组类型。因此,可以再判断上述第一名称的值是否为数组。
在判断出上述第一名称的值为数组时,可以再判断该数组中装载的数据类型是否为字典,即判断该数组是否为字典数组。
具体的,可以在工具方法的类中,声明一个协议:@protocol ModelDelegate<NSObject>
+(NSDictionary*)objectClassInArray;
@end
从而,可以利用该协议确定出该数组中装载的具体的数据类型。然后再判断确定的该数组中装载的数据类型是否为字典类型。
当然,也可以调取数组中的成员判断其成员的类型是否为字典,从而获得数组中的数据类型是否为字典类型的判断结果。
在判断出上述数组中装载的数据类型为字典类型时,则可以将上述数组中的每个字典转换为模型,从而获得模型数组。
在本发明实施例中,将每个字典转换为模型,可以递归调用上述步骤S110至步骤S140的方法,实现将字典转换为模型。即对每个字典进行处理时,依次获得每个成员变量对应字典中的值,然后将字典中的每个值赋予其对应的成员变量。在数组中的字典再嵌套有字典时,则可以基于上述一个成员变量的名称的值为字典类型时,获得该值对应的类,然后将该值转换为该类对应的模型的方法,将字典中的字典转换为模型。
从而,可以实现将数组中的每个字典转换为模型,从而获得数组模型,然后再将数组模型与上述第一成员变量关联。
在对目标模型的每个成员变量进行上述的方法后,则可以实现将从接口返回的第一字典转换为模型。在第一字典中嵌套有字典时,则转换后的模型中嵌套有模型。在第一字典中嵌套有数组时,则转换后的模型中嵌套有模型数组。
本发明第一实施例提供的信息处理方法,可以实现利用运行时机制的底层API,完成字典到模型的转换,由于运行时机制的底层API的高效性,可以使整个字典转换为模型的方案变得高效。另外,可以实现对复杂情况的字典转换为模型,即字典中嵌套字典、字典中嵌套数组等情况下的字典到模型的转换。
第二实施例
本发明第二实施例提供了一种信息处理装置200,请参见图4,该信息处理装置200包括:名称获取模块210、字典调取模块220、第一判断模块230以及第一执行模块240。其中,所述名称获取模块210用于基于运行时机制,获得目标模型中的第一成员变量的第一名称;所述字典调取模块220用于从请求接口返回的第一字典中获取所述第一名称对应的值;所述第一判断模块230用于判断所述第一名称对应的值是否为数值类型;所述第一执行模块240用于在所述第一名称对应的值为数值类型时,将所述第一名称对应的值与所述第一成员变量进行关联。
在本发明实施例中,请参见图5,所述名称获取模块210可以包括:变量获取单元211、指针获取单元212以及名称获取单元213。其中,所述变量获取单元211用于获得所述目标模型中的所有成员变量;所述指针获取单元212用于获得所述所有成员变量中的第一成员变量的指针;所述名称获取单元213用于基于所述指针,利用运行时机制的底层API获得所述第一成员变量的第一名称。
在本发明实施例中,该信息处理装置200还可以包括:第二判断模块、类获得模块、第一转换模块以及第二执行模块。其中,所述第二判断模块用于在所述第一名称对应的值不为数值类型时,判断所述第一名称对应的值是否为字典类型;所述类获得模块用于在所述第一名称对应的值为所述字典类型时,获得所述第一名称对应的值的类;所述第一转换模块用于将所述第一名称对应的值转换为所述类对应的第一模型;所述第二执行模块用于将所述第一模型与所述第一成员变量进行关联。
在本发明实施例中,该信息处理装置200还可以包括:第三判断模块、第四判断模块、第二转换模块以及第三执行模块。其中,所述第三判断模块用于在所述第一名称对应的值不为所述字典类型时,判断所述第一名称对应的值是否为数组;所述第四判断模块用于在所述第一名称对应的值为所述数组时,判断所述数组装载的数据类型是否为字典;所述第二转换模块用于在所述数组装载的数据类型为所述字典时,将所述数组中的每个字典转换为模型,从而获得模型数组;所述第三执行模块用于将所述模型数组与所述第一成员变量进行关联。
第三实施例
本发明第三实施例提供了一种电子设备100,请参见图1,所述电子设备100包括存储器102和处理器106,所述存储器102存储有计算机指令,当所述计算机指令由所述处理器106读取并执行时,使所述处理器106执行本发明第一实施例提供的信息处理方法。
第四实施例
本发明第四实施例提供了一种存储介质,所述存储介质中存储有计算机指令,其中,所述计算机指令在被读取并运行时执行本发明第一实施例提供的信息处理方法。
综上所述,本发明实施例提供的信息处理方法、装置、电子设备及存储介质,通过基于运行时机制,获得目标模型中的第一成员变量的第一名称,然后从请求接口返回的第一字典中获取第一名称对应的值,再判断第一名称对应的值是否为数值类型,最后在该第一名称对应的值为数值类型时,将第一名称对应的值与第一成员变量进行关联。从而,该信息处理方法、装置、电子设备及存储介质可以实现利用运行时机制的底层API,完成字典到模型的转换,由于运行时机制的底层API的高效性,可以使整个字典转换为模型的方案变得高效。另外,可以实现对复杂情况的字典转换为模型,即字典中嵌套字典、字典中嵌套数组等情况下的字典到模型的转换。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

Claims (10)

1.一种信息处理方法,其特征在于,所述方法包括:
基于运行时机制,获得目标模型中的第一成员变量的第一名称;
从请求接口返回的第一字典中获取所述第一名称对应的值;
判断所述第一名称对应的值是否为数值类型;
在为是时,将所述第一名称对应的值与所述第一成员变量进行关联。
2.根据权利要求1所述的方法,其特征在于,所述基于运行时机制,获得目标模型中的第一成员变量的第一名称,包括:
获得所述目标模型中的所有成员变量;
获得所述所有成员变量中的第一成员变量的指针;
基于所述指针,利用运行时机制的底层API获得所述第一成员变量的第一名称。
3.根据权利要求1所述的方法,其特征在于,判断所述第一名称对应的值是否为数值类型之后,所述方法还包括:
在为否时,判断所述第一名称对应的值是否为字典类型;
在所述第一名称对应的值为所述字典类型时,获得所述第一名称对应的值的类;
将所述第一名称对应的值转换为所述类对应的第一模型;
将所述第一模型与所述第一成员变量进行关联。
4.根据权利要求3所述的方法,其特征在于,判断所述第一名称对应的值是否为字典类型之后,所述方法还包括:
在所述第一名称对应的值不为所述字典类型时,判断所述第一名称对应的值是否为数组;
在所述第一名称对应的值为所述数组时,判断所述数组装载的数据类型是否为字典类型;
在所述数组装载的数据类型为所述字典类型时,将所述数组中的每个字典转换为模型,从而获得模型数组;
将所述模型数组与所述第一成员变量进行关联。
5.信息处理装置,其特征在于,所述装置包括:名称获取模块、字典调取模块、第一判断模块以及第一执行模块,其中,
所述名称获取模块用于基于运行时机制,获得目标模型中的第一成员变量的第一名称;
所述字典调取模块用于从请求接口返回的第一字典中获取所述第一名称对应的值;
所述第一判断模块用于判断所述第一名称对应的值是否为数值类型;
所述第一执行模块用于在所述第一名称对应的值为数值类型时,将所述第一名称对应的值与所述第一成员变量进行关联。
6.根据权利要求5所述的装置,其特征在于,所述名称获取模块包括:变量获取单元、指针获取单元以及名称获取单元,其中,
所述变量获取单元用于获得所述目标模型中的所有成员变量;
所述指针获取单元用于获得所述所有成员变量中的第一成员变量的指针;
所述名称获取单元用于基于所述指针,利用运行时机制的底层API获得所述第一成员变量的第一名称。
7.根据权利要求5所述的装置,其特征在于,所述装置还包括:第二判断模块、类获得模块、第一转换模块以及第二执行模块,其中,
所述第二判断模块用于在所述第一名称对应的值不为数值类型时,判断所述第一名称对应的值是否为字典类型;
所述类获得模块用于在所述第一名称对应的值为所述字典类型时,获得所述第一名称对应的值的类;
所述第一转换模块用于将所述第一名称对应的值转换为所述类对应的第一模型;
所述第二执行模块用于将所述第一模型与所述第一成员变量进行关联。
8.根据权利要求7所述的装置,其特征在于,所述装置还包括:第三判断模块、第四判断模块、第二转换模块以及第三执行模块,其中,
所述第三判断模块用于在所述第一名称对应的值不为所述字典类型时,判断所述第一名称对应的值是否为数组;
所述第四判断模块用于在所述第一名称对应的值为所述数组时,判断所述数组装载的数据类型是否为字典类型;
所述第二转换模块用于在所述数组装载的数据类型为所述字典类型时,将所述数组中的每个字典转换为模型,从而获得模型数组;
所述第三执行模块用于将所述模型数组与所述第一成员变量进行关联。
9.一种电子设备,其特征在于,所述电子设备包括存储器和处理器,所述存储器存储有计算机指令,当所述计算机指令由所述处理器读取并执行时,使所述处理器执行如权利要求1-4中任一权项所述的方法。
10.一种存储介质,其特征在于,所述存储介质中存储有计算机指令,其中,所述计算机指令在被读取并运行时执行如权利要求1-4中任一权项所述的方法。
CN201810008972.3A 2018-01-04 2018-01-04 信息处理方法、装置、电子设备及存储介质 Pending CN108196844A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810008972.3A CN108196844A (zh) 2018-01-04 2018-01-04 信息处理方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810008972.3A CN108196844A (zh) 2018-01-04 2018-01-04 信息处理方法、装置、电子设备及存储介质

Publications (1)

Publication Number Publication Date
CN108196844A true CN108196844A (zh) 2018-06-22

Family

ID=62588353

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810008972.3A Pending CN108196844A (zh) 2018-01-04 2018-01-04 信息处理方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN108196844A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109857389A (zh) * 2019-01-14 2019-06-07 平安科技(深圳)有限公司 模型数据生成方法、装置、计算机设备及存储介质
CN110764768A (zh) * 2018-07-26 2020-02-07 北京京东金融科技控股有限公司 一种模型对象与json对象互转的方法和装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8762322B2 (en) * 2012-05-22 2014-06-24 Oracle International Corporation Distributed order orchestration system with extensible flex field support
CN104750468A (zh) * 2013-12-26 2015-07-01 北京亿阳信通科技有限公司 一种服务端拓扑数据转换方法和转换装置
CN105159928A (zh) * 2015-08-05 2015-12-16 深圳联友科技有限公司 一种json数据转换成模型数据的方法及系统
CN106843878A (zh) * 2017-01-20 2017-06-13 武汉斗鱼网络科技有限公司 一种模型生成方法和系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8762322B2 (en) * 2012-05-22 2014-06-24 Oracle International Corporation Distributed order orchestration system with extensible flex field support
CN104750468A (zh) * 2013-12-26 2015-07-01 北京亿阳信通科技有限公司 一种服务端拓扑数据转换方法和转换装置
CN105159928A (zh) * 2015-08-05 2015-12-16 深圳联友科技有限公司 一种json数据转换成模型数据的方法及系统
CN106843878A (zh) * 2017-01-20 2017-06-13 武汉斗鱼网络科技有限公司 一种模型生成方法和系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
忆江南: "iOS中字典转模型的方法及底层原理", 《CSDN博客》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110764768A (zh) * 2018-07-26 2020-02-07 北京京东金融科技控股有限公司 一种模型对象与json对象互转的方法和装置
CN109857389A (zh) * 2019-01-14 2019-06-07 平安科技(深圳)有限公司 模型数据生成方法、装置、计算机设备及存储介质

Similar Documents

Publication Publication Date Title
CN108595157B (zh) 区块链数据的处理方法、装置、设备和存储介质
CN111080304B (zh) 一种可信关系识别方法、装置及设备
CN110377209B (zh) 一种通过拖拽实现可视化流程配置的方法及装置
CN104516730A (zh) 一种数据处理方法和装置
CN107526645A (zh) 一种通信优化方法及系统
CN109376866A (zh) 元数据的记录方法及装置、量子程序的运行方法及装置
CN109086126B (zh) 任务调度处理方法、装置、服务器、客户端及电子设备
CN108008936A (zh) 一种数据处理方法、装置及电子设备
CN110955715A (zh) Erp系统和目标平台的数据转换方法、装置以及电子设备
CN108572970A (zh) 一种结构化数据的处理方法和分布式处理系统
Brinkschulte An artificial DNA for self‐descripting and self‐building embedded real‐time systems
CN108134812A (zh) 数据处理方法和装置
CN103838720B (zh) 页面文件载入执行方法和装置
CN108196844A (zh) 信息处理方法、装置、电子设备及存储介质
CN112559291A (zh) 一种资源监控方法、装置及电子设备和存储介质
CN109062947A (zh) 用户画像标签查询方法、设备及计算机可读存储介质
CN109344255B (zh) 标签的填充方法及终端设备
CN109656997B (zh) 工业互联网大数据服务平台系统和服务方法
CN106648839A (zh) 数据处理的方法和装置
CN109388406A (zh) 转换java代码的方法及装置、存储介质、电子装置
CN107766230A (zh) 一种基于配置文件进行测试的方法与设备
CN109683917A (zh) 用于将应用部署于应用服务器的方法、设备以及介质
Reitz et al. Automatic integration of simulated systems into opc ua networks
CN108965578A (zh) 信息推送方法及装置
CN106982246A (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
RJ01 Rejection of invention patent application after publication

Application publication date: 20180622

RJ01 Rejection of invention patent application after publication