Java中的属性赋值方法、装置及服务器制造方法及图纸

技术编号:24089442 阅读:39 留言:0更新日期:2020-05-09 07:25
本发明专利技术提供了一种Java中的属性赋值方法、装置及服务器,首先获取预先创建的第一对象和第二对象;然后获取第一对象或第二对象中,携带有预设的注解信息的第一属性;其中的注解信息用于指示:将第一属性的属性值赋值给预设的第二属性,或者,将预设的第二属性的属性值赋值给第一属性;第一属性和第二属性位于不同的对象中;最后对与注解信息相关联的属性进行赋值处理。该方式中,通过对Java中的属性设置注解信息来指示属性的赋值方式,从而可以实现对象间不同属性间的属性值的复制,无需再通过工程师手动对不同属性间的属性值的复制,节约了工作量,同时也便于代码的维护。

Property assignment method, device and server in Java

【技术实现步骤摘要】
Java中的属性赋值方法、装置及服务器
本专利技术涉及云计算
,尤其是涉及一种Java中的属性赋值方法、装置及服务器。
技术介绍
相关技术中,Java程序代码中仅能实现同名属性间属性值的复制,例如,可以将对象a中的x属性的属性值,复制到对象b中的x属性,也可以复制到对象c中的x属性;但是,不能实现对象a中的x属性的属性值,复制到对象b中的y属性;因而对于属性名不同的属性值复制,需要工程师手动实现,操作繁琐,工作量大,同时也不便于代码的维护。
技术实现思路
本专利技术的目的在于提供一种Java中的属性赋值方法、装置及服务器,以实现对象间不同属性间的属性值的复制,无需再通过工程师手动对不同属性间的属性值的复制,节约工作量,同时便于代码的维护。第一方面,本专利技术实施例提供了一种Java中的属性赋值方法,其中,该方法包括:获取预先创建的第一对象和第二对象;获取第一对象或第二对象中,携带有预设的注解信息的第一属性;其中,注解信息用于指示:将第一属性的属性值赋值给预设的第二属性,或者,将预设的第二属性的属性值赋值给第一属性;第一属性和第二属性位于不同的对象中;对与注解信息相关联的属性进行赋值处理。结合第一方面,本专利技术实施例提供了第一方面的第一种可能的实施方式,其中,获取预先创建的第一对象和第二对象的步骤,包括:基于预设的第一类创建第一对象,基于预设的第二类创建第二对象;其中,第一类或第二类中,为第一属性配置有注解信息。结合第一方面,本专利技术实施例提供了第一方面的第二种可能的实施方式,其中,获取第一对象或第二对象中,携带有预设的注解信息的第一属性的步骤,包括:遍历第一对象中的属性,得到携带有预设的注解信息的第一属性;或者,遍历第二对象中的属性,得到携带有预设的注解信息的第一属性。结合第一方面,本专利技术实施例提供了第一方面的第三种可能的实施方式,其中,对与注解信息相关联的属性进行赋值处理的步骤,包括:如果注解信息指示将第一属性的属性值赋值给预设的第二属性,提取第一属性的属性值,将第一属性的属性值赋值给第二属性;如果注解信息指示将预设的第二属性的属性值赋值给第一属性,提取第二属性的属性值,将第二属性的属性值赋值给第一属性。结合第一方面的第三种可能的实施方式,本专利技术实施例提供了第一方面的第四种可能的实施方式,其中,提取第一属性的属性值的步骤,包括:如果注解信息指示将第一属性的属性值赋值给预设的第二属性,通过Java反射机制,调用第一属性对应的取值函数,提取第一属性的属性值;将第一属性的属性值复制给第二属性的步骤,包括:通过Java反射机制,调用第二属性对应的赋值函数,将第一属性的属性值赋值给第二属性。结合第一方面的第四种可能的实施方式,本专利技术实施例提供了第一方面的第五种可能的实施方式,其中,提取第一属性的属性值的步骤之后,该方法还包括:将第一属性的属性值的数据类型转换为第二属性的数据类型,或者将上述第二属性的数据类型转换为第一属性的属性值的数据类型。结合第一方面的第三种可能的实施方式,本专利技术实施例提供了第一方面的第六种可能的实施方式,其中,提取第二属性的属性值的步骤,包括:如果注解信息指示将预设的第二属性的属性值赋值给第一属性,通过Java反射机制,调用第二属性对应的取值函数,提取第二属性的属性值;将第二属性的属性值赋值给第一属性的步骤,包括:通过Java反射机制,调用第一属性对应的赋值函数,将第二属性的属性值赋值给第一属性。结合第一方面的第六种可能的实施方式,本专利技术实施例提供了第一方面的第七种可能的实施方式,其中,提取第二属性的属性值的步骤之后,该方法还包括:将第二属性的属性值的数据类型转换为第一属性的数据类型,或者将第一属性的属性值的数据类型转换为第二属性的数据类型。第二方面,本专利技术实施例提供了一种Java中的属性赋值装置,其中,该装置包括:对象获取模块,用于获取预先创建的第一对象和第二对象;属性获取模块,用于获取第一对象或第二对象中,携带有预设的注解信息的第一属性;其中,注解信息用于指示:将第一属性的属性值赋值给预设的第二属性,或者,将预设的第二属性的属性值赋值给第一属性;第一属性和第二属性位于不同的对象中;赋值处理模块,用于对与注解信息相关联的属性进行赋值处理。第三方面,本专利技术实施例提供了一种服务器,包括处理器和存储器,存储器存储有能够被处理器执行的机器可执行指令,处理器执行机器可执行指令以实现上述Java中的属性赋值方法。第四方面,本专利技术实施例提供了一种机器可读存储介质,其中,机器可读存储介质存储有机器可执行指令,机器可执行指令在被处理器调用和执行时,机器可执行指令促使处理器实现上述Java中的属性赋值方法。本专利技术实施例带来了以下有益效果:本专利技术提供的一种Java中的属性赋值方法、装置及服务器,首先获取预先创建的第一对象和第二对象;然后获取第一对象或第二对象中,携带有预设的注解信息的第一属性;其中的注解信息用于指示:将第一属性的属性值赋值给预设的第二属性,或者,将预设的第二属性的属性值赋值给第一属性;第一属性和第二属性位于不同的对象中;最后对与注解信息相关联的属性进行赋值处理。该方式中,通过对Java中的属性设置注解信息来指示属性的赋值方式,从而可以实现对象间不同属性间的属性值的复制,无需再通过工程师手动对不同属性间的属性值的复制,节约了工作量,同时也便于代码的维护。附图说明为了更清楚地说明本专利技术具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术实施例提供的一种Java中的属性赋值方法的流程图;图2为本专利技术实施例提供的另一种Java中的属性赋值方法的流程图;图3为本专利技术实施例提供的另一种Java中的属性赋值方法的流程图;图4为本专利技术实施例提供的一种Java中的属性赋值装置的结构示意图;图5为本专利技术实施例提供的一种服务器的结构示意图。具体实施方式下面将结合实施例对本专利技术的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。通过Java语言实现的线上服务中,用户请求通常带有大量参数,参数在使用过程中需要发送给商品、订单、实例等多个服务,因而存在大量的参数重复赋值的操作。然而目前Java程序代码中仅能实现同名属性间属性值的复制,而对于属性名不同的属性值复制,需要工程师手动实现,操作繁琐,工作量大,同时也不便于代码的维护。而且现有方案中,可以采用Java中BeanUtils工具类或PropertyUtils工具类进行同名属性间属性值的复制;其中,BeanUtils不支持属性值的数据类型转换,而Pr本文档来自技高网...

【技术保护点】
1.一种Java中的属性赋值方法,其特征在于,所述方法包括:/n获取预先创建的第一对象和第二对象;/n获取所述第一对象或所述第二对象中,携带有预设的注解信息的第一属性;其中,所述注解信息用于指示:将所述第一属性的属性值赋值给预设的第二属性,或者,将预设的第二属性的属性值赋值给所述第一属性;所述第一属性和所述第二属性位于不同的对象中;/n对与所述注解信息相关联的属性进行赋值处理。/n

【技术特征摘要】
1.一种Java中的属性赋值方法,其特征在于,所述方法包括:
获取预先创建的第一对象和第二对象;
获取所述第一对象或所述第二对象中,携带有预设的注解信息的第一属性;其中,所述注解信息用于指示:将所述第一属性的属性值赋值给预设的第二属性,或者,将预设的第二属性的属性值赋值给所述第一属性;所述第一属性和所述第二属性位于不同的对象中;
对与所述注解信息相关联的属性进行赋值处理。


2.根据权利要求1所述的方法,其特征在于,获取预先创建的第一对象和第二对象的步骤,包括:
基于预设的第一类创建第一对象,基于预设的第二类创建第二对象;其中,所述第一类或所述第二类中,为所述第一属性配置有所述注解信息。


3.根据权利要求1所述的方法,其特征在于,获取所述第一对象或所述第二对象中,携带有预设的注解信息的第一属性的步骤,包括:
遍历所述第一对象中的属性,得到携带有预设的注解信息的第一属性;或者,遍历所述第二对象中的属性,得到携带有预设的注解信息的第一属性。


4.根据权利要求1所述的方法,其特征在于,对与所述注解信息相关联的属性进行赋值处理的步骤,包括:
如果所述注解信息指示将所述第一属性的属性值赋值给预设的第二属性,提取所述第一属性的属性值,将所述第一属性的属性值赋值给所述第二属性;
如果所述注解信息指示将预设的第二属性的属性值赋值给所述第一属性,提取所述第二属性的属性值,将所述第二属性的属性值赋值给所述第一属性。


5.根据权利要求4所述的方法,其特征在于,提取所述第一属性的属性值的步骤,包括:如果所述注解信息指示将所述第一属性的属性值赋值给预设的第二属性,通过Java反射机制,调用所述第一属性对应的取值函数,提取所述第一属性的属性值;
所述将所述第一属性的属性值复制给所述第二属性的步骤,包括:通过Java反射机制,调用所述第二属性对应的赋值函数,将所述第一属性的属性值赋值给所述第二属性。


6.根据权利要求5所述的...

【专利技术属性】
技术研发人员:王文姝
申请(专利权)人:北京金山云网络技术有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1