CN109901822A - 对象互转方法、装置及存储介质、服务器 - Google Patents
对象互转方法、装置及存储介质、服务器 Download PDFInfo
- Publication number
- CN109901822A CN109901822A CN201910015170.XA CN201910015170A CN109901822A CN 109901822 A CN109901822 A CN 109901822A CN 201910015170 A CN201910015170 A CN 201910015170A CN 109901822 A CN109901822 A CN 109901822A
- Authority
- CN
- China
- Prior art keywords
- data
- attribute
- reference data
- conversion reference
- connection object
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及研发过程优化、事务处理过程优化技术领域,本申请实施例提供的一种对象互转方法,包括:获取预存的具有映射关系的两数据传输对象,提取两数据传输对象的至少一个属性数据;依据预设数据库中的属性数据将一数据传输对象的属性数据确定为转换基准数据;依据转换基准数据更新另一数据传输对象的属性数据。本申请实施例提供的一种对象互转方法主要应用于MAP(将键映射到值的对象)与DTO(数据传输对象)之间的转换,可以减少MAP和DTO转换代码的编写量,同时可以MAP和DTO的维护更为方便,进而降低研发人员和维护人员的工作量,提高开发的效率,同时还使得整个程序更为简单,避免占用更多的栈内存,也提高了MAP和DTO之间的转换效率。
Description
技术领域
本发明涉及研发过程优化、事务处理过程优化技术领域,具体涉及一种对象互转方法、装置及存储介质、服务器。
背景技术
随着宽带无线接入技术和移动终端技术的飞速发展,越来越多的人们开始使用智能手机和平板电脑来方便快捷的使用移动互联网服务。移动应用的开发过程中网络编程应用的越来越多,数据的应用在开发过程中越来越重要。现大部分代码采用MAP指定的KEY与DTO属性值进行对应处理,该方式代码重迭繁杂、维护不方便,一旦DTO或者MAP中的某KEY名称修改,涉及到调用处均需要进行修改,降低的程序开发的效率。另外,当DTO或者MAP中的某KEY名称修改且没有及时发现时,则会导致数据的调用失败,为了实现数据的调用,常规情况下,会引入新的DTO与MAP对应,然而该方法会导致整个程序冗余,占用更多的栈内存。
发明内容
为克服以上技术问题,特别是MAP指定的KEY与DTO属性值进行对应导致代码重叠繁杂、维护不方便的问题,特提出以下技术方案:
本发明实施例提供的一种对象互转方法,包括:
获取预存的具有映射关系的两数据传输对象,提取两所述数据传输对象的至少一个属性数据;
依据预设数据库中的属性数据将一所述数据传输对象的所述属性数据确定为转换基准数据;
依据所述转换基准数据更新另一所述数据传输对象的属性数据。
可选地,所述依据所述转换基准数据更新另一所述数据传输对象的属性或属性值,包括:
对比所述转换基准数据和另一所述数据传输对象中与所述转换基准数据具有映射关系的所述属性数据;
当所述转换基准数据和另一所述数据传输对象中与所述转换基准数据具有映射关系的所述属性数据不一致时,调用所述转换基准数据作为另一所述数据传输对象的属性数据,且该属性数据与所述转换基准数据具有映射关系。
可选地,所述依据所述转换基准数据更新另一所述数据传输对象的属性或属性值之后,包括:
对比所述转换基准数据和更新后的所述另一所述数据传输对象的所属性数据;
当所述转换基准数据和更新后的所述另一所述数据传输对象的所属性数据不一致时,获取所述转换基准数据,生成包括所述转换基准数据的提醒信息,向用户发送所述提醒信息。
可选地,所述获取所述转换基准数据,生成包括所述转换基准数据的提醒信息,包括:
所述属性数据包括属性名称和属性值;
当所述转换基准数据为所述属性时,获取所述属性的字段,基于所述字段生成属性转换失败的提醒信息;
当所述转换基准数据为所述属性值时,获取所述属性值、所述属性值对应的同一数据传输对象的属性,依据所述属性值和所述属性生成属性值赋值失败的提醒信息。
可选地,所述当所述转换基准数据和更新后的所述另一所述数据传输对象的所属性数据不一致时,获取所述转换基准数据之后,还包括:
依据所述转换基准数据生成转换失败日志。
可选地,所述获取预存的具有映射关系的两数据传输对象,提取两所述数据传输对象的至少一个属性数据之前,包括:
按照预设时间周期获取所述预设数据库中的所述属性数据,依据所述预设数据库中的所述属性数据更新与所述预设数据库连接的任一所述数据传输对象的属性数据。
本发明实施例还提供了一种对象互转装置,包括:
提取模块,用于获取预存的具有映射关系的两数据传输对象,提取两所述数据传输对象的至少一个属性数据;
转换基准数据确定模块,用于依据预设数据库中的属性数据将一所述数据传输对象的所述属性数据确定为转换基准数据;
更新模块,用于依据所述转换基准数据更新另一所述数据传输对象的属性数据。
可选地,所述更新模块包括:
第一对比单元,用于对比所述转换基准数据和另一所述数据传输对象中与所述转换基准数据具有映射关系的所述属性数据;
调用单元,用于当所述转换基准数据和另一所述数据传输对象中与所述转换基准数据具有映射关系的所述属性数据不一致时,调用所述转换基准数据作为另一所述数据传输对象的属性数据,且该属性数据与所述转换基准数据具有映射关系。
本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,该程序被处理器执行时实现任一技术方案所述的对象互转方法。
本发明实施例还提供了一种服务器,包括:
一个或多个处理器;
存储器;
一个或多个应用程序,其中所述一个或多个应用程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个应用程序配置用于执行根据任一技术方案所述的对象互转方法的步骤。
本发明与现有技术相比,具有以下有益效果:
1、本申请实施例提供的一种对象互转方法,包括:获取预存的具有映射关系的两数据传输对象,提取两所述数据传输对象的至少一个属性数据;依据预设数据库中的属性数据将一所述数据传输对象的所述属性数据确定为转换基准数据;依据所述转换基准数据更新另一所述数据传输对象的属性数据。本申请实施例提供的一种对象互转方法主要应用于MAP(将键映射到值的对象)与DTO(数据传输对象)之间的转换,更进一步地,该方法通过对象互转类实现MAP(将键映射到值的对象)与DTO(数据传输对象)之间的转换,即MAP与DTO的转换主要通过该对象互转类实现,在MAP和DTO之间增加该对象互转类可以减少MAP和DTO转换代码的编写量,同时可以MAP和DTO的维护更为方便,进而降低研发人员和维护人员的工作量,提高开发的效率,同时由于通过该对象互转类实现MAP和DTO的转换,在减少MAP和DTO转换的代码量时,还使得整个程序更为简单,避免占用更多的栈内存,也提高了MAP和DTO之间的转换效率。
2、本申请实施例提供的一种对象互转方法,所述获取预存的具有映射关系的两数据传输对象,提取两所述数据传输对象的至少一个属性数据之前,包括:按照预设时间周期获取所述预设数据库中的所述属性数据,依据所述预设数据库中的所述属性数据更新与所述预设数据库连接的任一所述数据传输对象的属性数据。通过该修改,在本申请提供的实施例中,按照预设时间周期获取所述预设数据库中的属性数据,可以保证数据的时效性,使得数据较新,在对DTO进行属性数据的维护之后,则可以基于DTO维护后的数据对与DTO连接的MAP的属性数据进行转换、更新或者修改等,进而可以使得与DTO连接的所有MAP调用点保持统一,其中调用点提供的基本为MAP格式,与一个DTO具有映射关系的MAP可能被多个地方使用,因此可以保证调用点保持统一。
本发明附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为本发明对象互转方法的典型实施例中一种实施方式的流程示意图;
图2为本发明对象互转装置的典型实施例的结构示意图;
图3为本发明服务器的一实施例结构示意图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作。
本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。
本领域技术人员应当理解,本发明所称的“应用”、“应用程序”、“应用软件”以及类似表述的概念,是业内技术人员所公知的相同概念,是指由一系列计算机指令及相关数据资源有机构造的适于电子运行的计算机软件。除非特别指定,这种命名本身不受编程语言种类、级别,也不受其赖以运行的操作系统或平台所限制。理所当然地,此类概念也不受任何形式的终端所限制。
本申请实施例提供的一种对象互转方法,在其中一种实施方式中,如图1所示,包括:S100、S200、S300。
S100:获取预存的具有映射关系的两数据传输对象,提取两所述数据传输对象的至少一个属性数据;
S200:依据预设数据库中的属性数据将一所述数据传输对象的所述属性数据确定为转换基准数据;
S300:依据所述转换基准数据更新另一所述数据传输对象的属性数据。
本申请实施例提供的一种对象互转方法主要应用于MAP(将键映射到值的对象)与DTO(数据传输对象)之间的转换,更进一步地,该方法通过对象互转类实现MAP(将键映射到值的对象)与DTO(数据传输对象)之间的转换,即MAP与DTO的转换主要通过该对象互转类实现,在MAP和DTO之间增加该对象互转类可以减少MAP和DTO转换代码的编写量,同时可以MAP和DTO的维护更为方便,进而降低研发人员和维护人员的工作量,提高开发的效率,同时由于通过该对象互转类实现MAP和DTO的转换,在减少MAP和DTO转换的代码量时,还使得整个程序更为简单,避免占用更多的栈内存,也提高了MAP和DTO之间的转换效率。
为了实现前述的有益效果,本申请实施例提供的对象互转方法,首先是获取具有映射关系的量数据传输对象,如前述的具有映射关系的MAP和DTO,其中,MAP对象通常包括key(键)和value(值)中的一种或者两种,key中可以包括多个字段,value也可以包括多个值,且与key中的字段对应,MAP与DTO之间的映射关系为DTO属性映射到MAP的KEY,MAP的value映射到DTO的属性值。因此,为了实现数据的更新,基于MAP和DTO之间的映射关系,提取DTO和MAP的属性数据,相应的,属性数据包括属性、属性值中的一种或者两种,如前述MAP的key和value以及DTO的属性和属性值。为了确定DTO和MAP中的最新属性数据,则依据预设数据库中的属性数据确定转换基准数据,其中转换基准数据可以为DTO或者MAP中的属性和属性值中任意一个或者两个,或者MAP和DTO中各包括一个新的属性数据,将最新的属性数据确定为转换基准数据,更进一步地,该预设数据库可以与DTO和/或MAP连接,当预设数据库中仅与DTO和MAP中任意一个连接时,由于DTO和MAP的数据均是基于数据库中数据进行更新,则以与预设数据库连接的数据传输对象中的数据作为转换基准数据。在确定了转换基准数据之后,则以该转换基准数据更新另一数据传输对象的属性数据,例如,当DTO中的属性为最新数据时,则以DTO中的属性数据更新MAP的key,或者当MAP中的value为最新的属性数据时,则以MAP的value更新DTO的属性值。
可选地,所述依据所述转换基准数据更新另一所述数据传输对象的属性或属性值,包括:
对比所述转换基准数据和另一所述数据传输对象中与所述转换基准数据具有映射关系的所述属性数据;
当所述转换基准数据和另一所述数据传输对象中与所述转换基准数据具有映射关系的所述属性数据不一致时,调用所述转换基准数据作为另一所述数据传输对象的属性数据,且该属性数据与所述转换基准数据具有映射关系。
结合前述说明,本申请实施例提供的一种对象互转方法,在进行属性数据更新的过程中,需要新确定另一所述数据传输对象的属性数据是否为最新的属性数据,避免两者一致时,还进行属性数据的更新,以降低栈内存的占用以及能源的消耗。因此在确定了转换基准数据时,将转换基准数据和另一所述数据传输对象中属性数据进行对比,由于转换基准数据为一个数据传输对象的属性数据,进而依据该属性数据更新与该数据传输对象具有映射关系的另一数据传输对象的属性数据。结合前述可知,数据传输对象之间的映射关系实际是属性数据之间的映射关系,因此,基于转换基准数据更新的是与该转换基准数据具有映射关系的另一数据传输对象的属性数据,进而在对比时,将转换基准数据与另一数据传输对象的属性数据进行对比,且两数据具有映射关系,在两数据不一致时,则可以依据转换基准数据更新另一数据传输对象的属性数据,通过先对比再更新的方法,可以避免无效的更新。
可选地,所述依据所述转换基准数据更新另一所述数据传输对象的属性或属性值之后,包括:
对比所述转换基准数据和更新后的所述另一所述数据传输对象的所属性数据;
当所述转换基准数据和更新后的所述另一所述数据传输对象的所属性数据不一致时,获取所述转换基准数据,生成包括所述转换基准数据的提醒信息,向用户发送所述提醒信息。
结合前文说明,在基于转换基准数据更新另一所述数据传输对象的所述属性数据之后,为了能够确定属性数据更新成功,还需要对比转换基准数据和更新后的另一所述数据传输对象的属性数据。当两者不一致时,为了使得研发人员或者维护人员能够及时地对该状况作出响应,则向对应的用户发送提醒信息,其中,需要获取转换基准数据,以便于生成包括转换基准数据的提醒信息,即提醒信息中包括了转换基准数据,更进一步地,还可以获取包括该转换基准数据的数据传输对象以及与该数据传输对象具有映射关系的另一数据传输对象的详细信息,以便于研发人员或者维护人员能够快递地查找到对应的数据传输对象,找到数据转换不成功的原因并进行解决。
可选地,所述获取所述转换基准数据,生成包括所述转换基准数据的提醒信息,包括:
所述属性数据包括属性名称和属性值;
当所述转换基准数据为所述属性时,获取所述属性的字段,基于所述字段生成属性转换失败的提醒信息;
当所述转换基准数据为所述属性值时,获取所述属性值、所述属性值对应的同一数据传输对象的属性,依据所述属性值和所述属性生成属性值赋值失败的提醒信息。
如前述,属性数据包括属性名称(也即前文中的属性)和属性值,当转换基准数据为所述属性名称时,为了使得研发人员或者维护人员能够更为快速地确定转换失败的原因和节点,则获取属性名称的字段,基于该字段生成属性转换失败的提醒信息,在本申请提供的实施例中,可以预设置提醒信息的模板,当将DTO的属性数据转换为MAP的属性数据时,提醒信息模板如fieldName+"转换失败",fieldName为对应的属性名称,当该数据传输对象为用于对应行业相关用户的数据传输时,该提醒信息还可以设置为"存量客户字段"+fieldName+"转换失败",其中存量客户字段为相关客户的信息;在另一种情况中,当将MAP的属性数据转换为DTO的属性数据时,提醒信息模板如key+"方法赋值"+value+"失败",通过前述过程可以更为具体的知道具体转换失败的数据信息,进而使得开发人员或者维护人员针对性的解决转换失败的原因。
可选地,所述当所述转换基准数据和更新后的所述另一所述数据传输对象的所属性数据不一致时,获取所述转换基准数据之后,还包括:
依据所述转换基准数据生成转换失败日志。
在本申请提供的实施例中,在获取到转换基准数据之后,在方便后期进行数据的维护,避免后期产生相同的问题,依据转换基准数据生成转换失败日志,则可以对日志进行监控,在监控到转换失败的日志时,则可以向用户发送前述的提醒信息,或者将该日志进行整理归类。
可选地,所述获取预存的具有映射关系的两数据传输对象,提取两所述数据传输对象的至少一个属性数据之前,包括:
按照预设时间周期获取所述预设数据库中的所述属性数据,依据所述预设数据库中的所述属性数据更新与所述预设数据库连接的任一所述数据传输对象的属性数据。
在本申请提供的一种实施方式中,为了得到较新的转换基准数据,以便于后期能够更具该数据进行其他数据传输对象的属性数据的更新,按照预设时间周期获取所述预设数据库中的属性数据,其中时间周期可以为小时、天、月等为单位,更进一步,还可以在数据库中的属性数据发生变化之后,则立刻进行数据传输对象属性数据的更新,进而可以实现对数据传输对象的维护,特别地,在数据传输对象为DTO时,可对DTO做如下的维护:数据库增加字段,字段类型的改变等,展示层格式修改等情况。通过该修改,在本申请提供的实施例中,仅对DTO进行前述的维护之后,则可以基于DTO维护后的数据对与DTO连接的MAP的属性数据进行转换、更新或者修改等,进而可以使得与DTO连接的所有MAP调用点保持统一,其中调用点提供的基本为MAP格式,与一个DTO具有映射关系的MAP可能被多个地方使用,因此可以保证调用点保持统一。例如,结合前述说明,所有调用点需要获取MAP中的applno出参,通过本申请实施例提供的对象互转方法集成的对象转换类,就可以通过DTO转换为MAP的工具方法实现applno出参,代码不涉及写死的”applyNo”key值。即仅将将DTO中的属性applyNo修改为applNo就可以实现调用点获取MAP中的applno出参。
本发明实施例还提供了一种对象互转装置,在其中一种实施方式中,如图2所示,包括:提取模块100、转换基准数据确定模块200、更新模块300:
提取模块100,用于获取预存的具有映射关系的两数据传输对象,提取两所述数据传输对象的至少一个属性数据;
转换基准数据确定模块200,用于依据预设数据库中的属性数据将一所述数据传输对象的所述属性数据确定为转换基准数据;
更新模块300,用于依据所述转换基准数据更新另一所述数据传输对象的属性数据。
进一步地,如图2所示,本发明实施例中提供的一种对象互转装置还包括:第一对比单元310,用于对比所述转换基准数据和另一所述数据传输对象中与所述转换基准数据具有映射关系的所述属性数据;调用单元320,用于当所述转换基准数据和另一所述数据传输对象中与所述转换基准数据具有映射关系的所述属性数据不一致时,调用所述转换基准数据作为另一所述数据传输对象的属性数据,且该属性数据与所述转换基准数据具有映射关系。对比模块410,用于对比所述转换基准数据和更新后的所述另一所述数据传输对象的所属性数据;发送模块420,用于当所述转换基准数据和更新后的所述另一所述数据传输对象的所属性数据不一致时,获取所述转换基准数据,生成包括所述转换基准数据的提醒信息,向用户发送所述提醒信息。第一提醒信息生成单元421,用于当所述转换基准数据为所述属性时,获取所述属性的字段,基于所述字段生成属性转换失败的提醒信息;第二提醒信息生成单元421,用于当所述转换基准数据为所述属性值时,获取所述属性值、所述属性值对应的同一数据传输对象的属性,依据所述属性值和所述属性生成属性值赋值失败的提醒信息。日志生成单元423,用于依据所述转换基准数据生成转换失败日志。获取模块101,用于按照预设时间周期获取所述预设数据库中的所述属性数据,依据所述预设数据库中的所述属性数据更新与所述预设数据库连接的任一所述数据传输对象的属性数据。
本发明实施例提供的一种对象互转装置可以实现上述对象互转方法的实施例,具体功能实现请参见方法实施例中的说明,在此不再赘述。
本发明实施例提供的一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,该程序被处理器执行时实现任一项技术方案所述的对象互转方法。其中,所述计算机可读存储介质包括但不限于任何类型的盘(包括软盘、硬盘、光盘、CD-ROM、和磁光盘)、ROM(Read-OnlyMemory,只读存储器)、RAM(Random AcceSS Memory,随即存储器)、EPROM(EraSable Programmable Read-Only Memory,可擦写可编程只读存储器)、EEPROM(Electrically EraSable Programmable Read-OnlyMemory,电可擦可编程只读存储器)、闪存、磁性卡片或光线卡片。也就是,存储设备包括由设备(例如,计算机、手机)以能够读的形式存储或传输信息的任何介质,可以是只读存储器,磁盘或光盘等。
本发明实施例提供的一种计算机可读存储介质,可实现上述对象互转方法的实施例,在本申请中通过具有映射关系的数据传输对象之间的对象互转类实现数据传输对象之间的属性数据转换,通过将转换过程的代码集成到该类中,并结合映射关系以及反射机制实现属性数据确定以及转换,减少数据传输对象之间数据转换的代码编写量,进而降低开发人员的工作量,同时也便于后期对数据传输对象的维护,使得代码的逻辑也更为清晰,也方便对于与DTO连接的其他调用点的MAP数据维护,使得MAP数据能与DTO数据保持统一;本申请实施例提供的一种对象互转方法,包括:获取预存的具有映射关系的两数据传输对象,提取两所述数据传输对象的至少一个属性数据;依据预设数据库中的属性数据将一所述数据传输对象的所述属性数据确定为转换基准数据;依据所述转换基准数据更新另一所述数据传输对象的属性数据。本申请实施例提供的一种对象互转方法主要应用于MAP(将键映射到值的对象)与DTO(数据传输对象)之间的转换,更进一步地,该方法通过对象互转类实现MAP(将键映射到值的对象)与DTO(数据传输对象)之间的转换,即MAP与DTO的转换主要通过该对象互转类实现,在MAP和DTO之间增加该对象互转类可以减少MAP和DTO转换代码的编写量,同时可以MAP和DTO的维护更为方便,进而降低研发人员和维护人员的工作量,提高开发的效率,同时由于通过该对象互转类实现MAP和DTO的转换,在减少MAP和DTO转换的代码量时,还使得整个程序更为简单,避免占用更多的栈内存,也提高了MAP和DTO之间的转换效率。为了实现前述的有益效果,本申请实施例提供的对象互转方法,首先是获取具有映射关系的量数据传输对象,如前述的具有映射关系的MAP和DTO,其中,MAP对象通常包括key(键)和value(值)中的一种或者两种,key中可以包括多个字段,value也可以包括多个值,且与key中的字段对应,MAP与DTO之间的映射关系为DTO属性映射到MAP的KEY,MAP的value映射到DTO的属性值。因此,为了实现数据的更新,基于MAP和DTO之间的映射关系,提取DTO和MAP的属性数据,相应的,属性数据包括属性、属性值中的一种或者两种,如前述MAP的key和value以及DTO的属性和属性值。为了确定DTO和MAP中的最新属性数据,则依据预设数据库中的属性数据确定转换基准数据,其中转换基准数据可以为DTO或者MAP中的属性和属性值中任意一个或者两个,或者MAP和DTO中各包括一个新的属性数据,将最新的属性数据确定为转换基准数据,更进一步地,该预设数据库可以与DTO和/或MAP连接,当预设数据库中仅与DTO和MAP中任意一个连接时,由于DTO和MAP的数据均是基于数据库中数据进行更新,则以与预设数据库连接的数据传输对象中的数据作为转换基准数据。在确定了转换基准数据之后,则以该转换基准数据更新另一数据传输对象的属性数据,例如,当DTO中的属性为最新数据时,则以DTO中的属性数据更新MAP的key,或者当MAP中的value为最新的属性数据时,则以MAP的value更新DTO的属性值。
此外,在又一种实施例中,本发明还提供一种服务器,如图3所示,所述服务器处理器503、存储器505、输入单元507以及显示单元509等器件。本领域技术人员可以理解,图3示出的结构器件并不构成对所有服务器的限定,可以包括比图示更多或更少的部件,或者组合某些部件。存储器505可用于存储应用程序501以及各功能模块,处理器503运行存储在存储器505的应用程序501,从而执行设备的各种功能应用以及数据处理。存储器505可以是内存储器或外存储器,或者包括内存储器和外存储器两者。内存储器可以包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦写可编程ROM(EEPROM)、快闪存储器、或者随机存储器。外存储器可以包括硬盘、软盘、ZIP盘、U盘、磁带等。本发明所公开的存储器包括但不限于这些类型的存储器。本发明所公开的存储器505只作为例子而非作为限定。
输入单元507用于接收信号的输入,以及用户输入的个人信息和相关的身体状况信息。输入单元507可包括触控面板以及其它输入设备。触控面板可收集客户在其上或附近的触摸操作(比如客户使用手指、触笔等任何适合的物体或附件在触控面板上或在触控面板附近的操作),并根据预先设定的程序驱动相应的连接装置;其它输入设备可以包括但不限于物理键盘、功能键(比如播放控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。显示单元509可用于显示客户输入的信息或提供给客户的信息以及计算机设备的各种菜单。显示单元509可采用液晶显示器、有机发光二极管等形式。处理器503是计算机设备的控制中心,利用各种接口和线路连接整个电脑的各个部分,通过运行或执行存储在存储器503内的软件程序和/或模块,以及调用存储在存储器内的数据,执行各种功能和处理数据。图3中所示的一个或多个处理器503能够执行、实现图2中所示的提取模块100的功能、转换基准数据确定模块200的功能、更新模块300的功能、第一对比单元310的功能、调用单元320的功能、对比模块410的功能、发送模块420的功能、第一提醒信息生成单元421的功能、第二提醒信息生成单元421的功能、日志生成单元423的功能、获取模块101的功能。
在一种实施方式中,所述服务器包括一个或多个处理器503,以及一个或多个存储器505,一个或多个应用程序501,其中所述一个或多个应用程序501被存储在存储器505中并被配置为由所述一个或多个处理器503执行,所述一个或多个应用程序301配置用于执行以上实施例所述的对象互转方法。
本发明实施例提供的一种服务器,可实现上述对象互转方法的实施例,在本申请中通过具有映射关系的数据传输对象之间的对象互转类实现数据传输对象之间的属性数据转换,通过将转换过程的代码集成到该类中,并结合映射关系以及反射机制实现属性数据确定以及转换,减少数据传输对象之间数据转换的代码编写量,进而降低开发人员的工作量,同时也便于后期对数据传输对象的维护,使得代码的逻辑也更为清晰,也方便对于与DTO连接的其他调用点的MAP数据维护,使得MAP数据能与DTO数据保持统一;本申请实施例提供的一种对象互转方法,包括:获取预存的具有映射关系的两数据传输对象,提取两所述数据传输对象的至少一个属性数据;依据预设数据库中的属性数据将一所述数据传输对象的所述属性数据确定为转换基准数据;依据所述转换基准数据更新另一所述数据传输对象的属性数据。本申请实施例提供的一种对象互转方法主要应用于MAP(将键映射到值的对象)与DTO(数据传输对象)之间的转换,更进一步地,该方法通过对象互转类实现MAP(将键映射到值的对象)与DTO(数据传输对象)之间的转换,即MAP与DTO的转换主要通过该对象互转类实现,在MAP和DTO之间增加该对象互转类可以减少MAP和DTO转换代码的编写量,同时可以MAP和DTO的维护更为方便,进而降低研发人员和维护人员的工作量,提高开发的效率,同时由于通过该对象互转类实现MAP和DTO的转换,在减少MAP和DTO转换的代码量时,还使得整个程序更为简单,避免占用更多的栈内存,也提高了MAP和DTO之间的转换效率。为了实现前述的有益效果,本申请实施例提供的对象互转方法,首先是获取具有映射关系的量数据传输对象,如前述的具有映射关系的MAP和DTO,其中,MAP对象通常包括key(键)和value(值)中的一种或者两种,key中可以包括多个字段,value也可以包括多个值,且与key中的字段对应,MAP与DTO之间的映射关系为DTO属性映射到MAP的KEY,MAP的value映射到DTO的属性值。因此,为了实现数据的更新,基于MAP和DTO之间的映射关系,提取DTO和MAP的属性数据,相应的,属性数据包括属性、属性值中的一种或者两种,如前述MAP的key和value以及DTO的属性和属性值。为了确定DTO和MAP中的最新属性数据,则依据预设数据库中的属性数据确定转换基准数据,其中转换基准数据可以为DTO或者MAP中的属性和属性值中任意一个或者两个,或者MAP和DTO中各包括一个新的属性数据,将最新的属性数据确定为转换基准数据,更进一步地,该预设数据库可以与DTO和/或MAP连接,当预设数据库中仅与DTO和MAP中任意一个连接时,由于DTO和MAP的数据均是基于数据库中数据进行更新,则以与预设数据库连接的数据传输对象中的数据作为转换基准数据。在确定了转换基准数据之后,则以该转换基准数据更新另一数据传输对象的属性数据,例如,当DTO中的属性为最新数据时,则以DTO中的属性数据更新MAP的key,或者当MAP中的value为最新的属性数据时,则以MAP的value更新DTO的属性值。
本发明实施例提供的服务器可以实现上述提供的对象互转方法的实施例,具体功能实现请参见方法实施例中的说明,在此不再赘述。
以上所述仅是本发明的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (10)
1.一种对象互转方法,其特征在于,包括:
获取预存的具有映射关系的两数据传输对象,提取两所述数据传输对象的至少一个属性数据;
依据预设数据库中的属性数据将一所述数据传输对象的所述属性数据确定为转换基准数据;
依据所述转换基准数据更新另一所述数据传输对象的属性数据。
2.根据权利要求1所述的对象互转方法,其特征在于,所述数据传输对象包括DTO和/或MAP,所述属性数据包括MAP的key和/或value、DTO的属性和/或属性值。
3.根据权利要求1所述的对象互转方法,其特征在于,所述依据所述转换基准数据更新另一所述数据传输对象的属性或属性值,包括:
对比所述转换基准数据和另一所述数据传输对象中与所述转换基准数据具有映射关系的所述属性数据;
当所述转换基准数据和另一所述数据传输对象中与所述转换基准数据具有映射关系的所述属性数据不一致时,调用所述转换基准数据作为另一所述数据传输对象的属性数据,且该属性数据与所述转换基准数据具有映射关系。
4.根据权利要求1至3任一项所述的对象互转方法,其特征在于,所述依据所述转换基准数据更新另一所述数据传输对象的属性或属性值之后,包括:
对比所述转换基准数据和更新后的所述另一所述数据传输对象的所属性数据;
当所述转换基准数据和更新后的所述另一所述数据传输对象的所属性数据不一致时,获取所述转换基准数据,生成包括所述转换基准数据的提醒信息,向用户发送所述提醒信息。
5.根据权利要求4所述的对象互转方法,其特征在于,所述获取所述转换基准数据,生成包括所述转换基准数据的提醒信息,包括:
所述属性数据包括属性名称和属性值;
当所述转换基准数据为所述属性时,获取所述属性的字段,基于所述字段生成属性转换失败的提醒信息;
当所述转换基准数据为所述属性值时,获取所述属性值、所述属性值对应的同一数据传输对象的属性,依据所述属性值和所述属性生成属性值赋值失败的提醒信息。
6.根据权利要求4所述的对象互转方法,其特征在于,所述当所述转换基准数据和更新后的所述另一所述数据传输对象的所属性数据不一致时,获取所述转换基准数据之后,还包括:
依据所述转换基准数据生成转换失败日志。
7.根据权利要求1至3任一项所述的对象互转方法,其特征在于,所述获取预存的具有映射关系的两数据传输对象,提取两所述数据传输对象的至少一个属性数据之前,包括:
按照预设时间周期获取所述预设数据库中的所述属性数据,依据所述预设数据库中的所述属性数据更新与所述预设数据库连接的任一所述数据传输对象的属性数据。
8.一种对象互转装置,其特征在于,包括:
提取模块,用于获取预存的具有映射关系的两数据传输对象,提取两所述数据传输对象的至少一个属性数据;
转换基准数据确定模块,用于依据预设数据库中的属性数据将一所述数据传输对象的所述属性数据确定为转换基准数据;
更新模块,用于依据所述转换基准数据更新另一所述数据传输对象的属性数据。
9.根据权利要求8所述的对象互转装置,其特征在于,所述更新模块包括:
第一对比单元,用于对比所述转换基准数据和另一所述数据传输对象中与所述转换基准数据具有映射关系的所述属性数据;
调用单元,用于当所述转换基准数据和另一所述数据传输对象中与所述转换基准数据具有映射关系的所述属性数据不一致时,调用所述转换基准数据作为另一所述数据传输对象的属性数据,且该属性数据与所述转换基准数据具有映射关系。
10.一种服务器,其特征在于,包括:
一个或多个处理器;
存储器;
一个或多个应用程序,其中所述一个或多个应用程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个应用程序配置用于执行根据权利要求1至7任一项所述的对象互转方法的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910015170.XA CN109901822B (zh) | 2019-01-08 | 2019-01-08 | 对象互转方法、装置及存储介质、服务器 |
PCT/CN2019/117597 WO2020143306A1 (zh) | 2019-01-08 | 2019-11-12 | 对象互转方法、装置及存储介质、服务器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910015170.XA CN109901822B (zh) | 2019-01-08 | 2019-01-08 | 对象互转方法、装置及存储介质、服务器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109901822A true CN109901822A (zh) | 2019-06-18 |
CN109901822B CN109901822B (zh) | 2022-08-12 |
Family
ID=66943697
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910015170.XA Active CN109901822B (zh) | 2019-01-08 | 2019-01-08 | 对象互转方法、装置及存储介质、服务器 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN109901822B (zh) |
WO (1) | WO2020143306A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020143306A1 (zh) * | 2019-01-08 | 2020-07-16 | 平安科技(深圳)有限公司 | 对象互转方法、装置及存储介质、服务器 |
CN113110847A (zh) * | 2021-04-29 | 2021-07-13 | 杭州以诺行汽车科技股份有限公司 | 一种程序代码的转换处理方法及系统 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104731911A (zh) * | 2015-03-24 | 2015-06-24 | 浪潮集团有限公司 | 一种数据表与实体类的动态映射及转换方法 |
WO2016072973A1 (en) * | 2014-11-04 | 2016-05-12 | Hewlett Packard Enterprise Development Lp | Web services generation based on client-side code |
CN105607906A (zh) * | 2015-12-18 | 2016-05-25 | 北京金山安全软件有限公司 | 一种业务实现方法、装置及电子设备 |
CN106775696A (zh) * | 2016-12-08 | 2017-05-31 | 蓝信工场(北京)科技有限公司 | 数据处理方法及装置 |
CN106933554A (zh) * | 2015-12-30 | 2017-07-07 | 北京国双科技有限公司 | 类转换方法和装置 |
CN107506474A (zh) * | 2017-09-05 | 2017-12-22 | 荷花科技(北京)有限公司 | 基于对象映射的数据库操作方法及装置 |
CN107766039A (zh) * | 2017-10-30 | 2018-03-06 | 中国平安财产保险股份有限公司 | 从Java对象中存取属性值的方法、服务器及存储介质 |
CN108200111A (zh) * | 2016-12-08 | 2018-06-22 | 中国移动通信集团山西有限公司 | 资源配置信息更新方法、装置和资源接口设备 |
CN108388423A (zh) * | 2018-02-26 | 2018-08-10 | 中车青岛四方机车车辆股份有限公司 | 一种ios数据对象转换方法及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109901822B (zh) * | 2019-01-08 | 2022-08-12 | 平安科技(深圳)有限公司 | 对象互转方法、装置及存储介质、服务器 |
-
2019
- 2019-01-08 CN CN201910015170.XA patent/CN109901822B/zh active Active
- 2019-11-12 WO PCT/CN2019/117597 patent/WO2020143306A1/zh active Application Filing
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016072973A1 (en) * | 2014-11-04 | 2016-05-12 | Hewlett Packard Enterprise Development Lp | Web services generation based on client-side code |
CN104731911A (zh) * | 2015-03-24 | 2015-06-24 | 浪潮集团有限公司 | 一种数据表与实体类的动态映射及转换方法 |
CN105607906A (zh) * | 2015-12-18 | 2016-05-25 | 北京金山安全软件有限公司 | 一种业务实现方法、装置及电子设备 |
CN106933554A (zh) * | 2015-12-30 | 2017-07-07 | 北京国双科技有限公司 | 类转换方法和装置 |
CN106775696A (zh) * | 2016-12-08 | 2017-05-31 | 蓝信工场(北京)科技有限公司 | 数据处理方法及装置 |
CN108200111A (zh) * | 2016-12-08 | 2018-06-22 | 中国移动通信集团山西有限公司 | 资源配置信息更新方法、装置和资源接口设备 |
CN107506474A (zh) * | 2017-09-05 | 2017-12-22 | 荷花科技(北京)有限公司 | 基于对象映射的数据库操作方法及装置 |
CN107766039A (zh) * | 2017-10-30 | 2018-03-06 | 中国平安财产保险股份有限公司 | 从Java对象中存取属性值的方法、服务器及存储介质 |
CN108388423A (zh) * | 2018-02-26 | 2018-08-10 | 中车青岛四方机车车辆股份有限公司 | 一种ios数据对象转换方法及装置 |
Non-Patent Citations (3)
Title |
---|
BRUNO KERBS: "Automatically Mapping DTO to Entity on Spring Boot APIs", 《HTTPS://AUTH0.COM/BLOG/AUTOMATICALLY-MAPPING-DTO-TO-ENTITY-ON-SPRING-BOOT-APIS/》 * |
君莫笑·秋: "AutoMapper完成Dto与Model的转换", 《HTTPS://WWW.CNBLOGS.COM/VAEVVAEV/P/7071066.HTML》 * |
脉动回来: "map 与 pojo相互转换", 《HTTPS://BLOG.CSDN.NET/JIANDAN12214/ARTICLE/DETAILS/48549593》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020143306A1 (zh) * | 2019-01-08 | 2020-07-16 | 平安科技(深圳)有限公司 | 对象互转方法、装置及存储介质、服务器 |
CN113110847A (zh) * | 2021-04-29 | 2021-07-13 | 杭州以诺行汽车科技股份有限公司 | 一种程序代码的转换处理方法及系统 |
CN113110847B (zh) * | 2021-04-29 | 2024-02-13 | 杭州以诺行汽车科技股份有限公司 | 一种程序代码的转换处理方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN109901822B (zh) | 2022-08-12 |
WO2020143306A9 (zh) | 2020-08-27 |
WO2020143306A1 (zh) | 2020-07-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11615151B2 (en) | Query language for selecting object graphs from application metadata | |
US5758351A (en) | System and method for the creation and use of surrogate information system objects | |
US10073899B2 (en) | Efficient storage using automatic data translation | |
US20170329581A1 (en) | Open data protocol services in applications and interfaces across multiple platforms | |
US20190163293A1 (en) | Cross application digital ink repository | |
Hsu et al. | Big data analytics for sensor-network collected intelligence | |
US20150317147A1 (en) | Dynamic update installer for customized software | |
JP2014512037A (ja) | アプリケーションプログラムの状態モデルを提供するための方法およびシステム | |
CN103853433A (zh) | 通知消息提示方法和通知消息提示装置 | |
CN108027721B (zh) | 用于使用控件来配置通用程序的技术 | |
CN111026470A (zh) | 用于输入数据的验证和转换的系统和方法 | |
US8621429B2 (en) | Software development support apparatus, function extension method and storage medium for storing function extension program | |
CN101739390A (zh) | 基于技术设计文档的数据转换 | |
CN106575231B (zh) | 具有对操作的跨用户会话撤销支持的自动保存 | |
CN103257852B (zh) | 一种分布式应用系统的开发环境搭建的方法和装置 | |
US11080068B2 (en) | Adaptive user-interface assembling and rendering | |
CN103905231A (zh) | 对设备类型统一管理的方法和装置 | |
CN109901822A (zh) | 对象互转方法、装置及存储介质、服务器 | |
CN108351766A (zh) | 从移动设备创建和修改应用 | |
CN112000330A (zh) | 建模参数的配置方法、装置、设备和计算机存储介质 | |
AU2015270951B2 (en) | Semantic content accessing in a development system | |
CN109582382A (zh) | 配置信息的加载方法、装置、存储介质及终端设备 | |
Schmidt et al. | On enriching ajax with semantics: The web personalization use case | |
US8387072B1 (en) | Transactional environments for event and data binding handlers | |
CN110532494A (zh) | B/s应用的用户个性化配置方法、系统、及计算机设备 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |