CN108241705A - 一种数据插入方法及装置 - Google Patents

一种数据插入方法及装置 Download PDF

Info

Publication number
CN108241705A
CN108241705A CN201611222848.4A CN201611222848A CN108241705A CN 108241705 A CN108241705 A CN 108241705A CN 201611222848 A CN201611222848 A CN 201611222848A CN 108241705 A CN108241705 A CN 108241705A
Authority
CN
China
Prior art keywords
data
class
attribute
field
field name
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
Application number
CN201611222848.4A
Other languages
English (en)
Other versions
CN108241705B (zh
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.)
Beijing Shenzhou Taiyue Software Co Ltd
Original Assignee
Beijing Shenzhou Taiyue Software 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 Beijing Shenzhou Taiyue Software Co Ltd filed Critical Beijing Shenzhou Taiyue Software Co Ltd
Priority to CN201611222848.4A priority Critical patent/CN108241705B/zh
Publication of CN108241705A publication Critical patent/CN108241705A/zh
Application granted granted Critical
Publication of CN108241705B publication Critical patent/CN108241705B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/90335Query processing
    • G06F16/90344Query processing by using string matching techniques

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Devices For Executing Special Programs (AREA)

Abstract

本申请公开一种数据插入方法及装置,该方法中,在获取映射脚本后,通过所述映射脚本获取各个字段名称对应的字段类型,然后根据各个字段名称对应的字段类型,获取各个类的属性,并根据所述各个类的属性,生成JavaBean组件,再根据各个字段名称对应的字段值和所述JavaBean组件,生成待插入的数据对象,通过调用字符串生成方法,将所述待插入的数据对象转换为json字符串,再将所述json字符串插入到数据库。通过本申请公开的方案,能够向ElasticSearch中插入数据,并且,该方法避免了字段名称和字段值的拼接,从而避免出现拼接错误的问题,与现有技术相比,提高插入的数据的正确率。

Description

一种数据插入方法及装置
技术领域
本申请涉及数据应用领域,尤其涉及一种数据插入方法及装置。
背景技术
ElasticSearch,简称ES,是一种搜索服务器,能够实现实时搜索,具有稳定、可靠和安装使用方便等优势,具有广泛的应用。
其中,在ElasticSearch的应用过程中,有时需要将数据以json(JavaScriptObject Notation,JavaScript对象表示法)字符串的形式插入Elasticsearch的数据库中,以便保存该数据。其中,json字符串由字段名称(即key)和字段值(即value)构成。现有技术中,当需要进行数据插入时,首先读取ElasticSearch定义的映射脚本(即mapping脚本),该映射脚本中规定了各个字段名称与字段类型(如整数型或字符串型等)的映射关系,通过读取该映射脚本,能够获取各个字段名称对应的字段类型。然后生成符合该字段类型的字段值,将字段名称和其对应的字段值拼接起来,从而形成json字符串,最后再将该json字符串插入ElasticSearch中即可。
例如,若通过读取映射脚本,确定“agentName”的字段名称所对应的字段类型为“string(即字符串型)”,则表明“agentName”对应的字段值均为字符串类型,并且,结合实际需求,确定字段值为“张三”,则通过拼接,形成的json字符串为{“agentName”:“张三”},然后再将该json字符串插入ElasticSearch中。
但是,发明人在本申请的研究过程中发现,通过现有技术向ElasticSearch中插入数据时,由于生成json字符串的过程中需要进行字段名称和字段值的拼接,在拼接过程中很容易出现差错,从而生成错误的json字符串,导致插入的数据出错率较高。
发明内容
本申请提供一种数据插入方法及装置,以解决通过现有技术向ElasticSearch中插入数据时,所存在的插入的数据出错率较高的问题。
第一方面,本申请提供了一种数据插入方法,包括:
获取映射脚本,并通过所述映射脚本获取各个字段名称对应的字段类型;
根据所述各个字段名称对应的字段类型,获取各个类的属性,并根据所述各个类的属性,生成JavaBean组件;
需要插入数据时,根据各个字段名称对应的字段值和所述JavaBean组件,生成待插入的数据对象;
通过调用字符串生成方法,将所述待插入的数据对象转换为json字符串,并将所述json字符串插入到数据库。
可选的,还包括:
若检测到所述映射脚本发生改变,通过改变后的映射脚本获取各个字段名称对应的改变后的字段类型;
根据所述改变后的字段类型,重新生成并更新所述JavaBean组件;
需要插入数据时,根据所述改变后的字段类型及更新后的所述JavaBean组件生成所述待插入的数据对象。
可选的,所述根据所述各个字段名称对应的字段类型,获取各个类的属性,并根据所述各个类的属性,生成JavaBean组件,包括:
在获取所述各个字段名称对应的字段类型后,根据预先设定的字段类型与类的属性的映射关系,获取所述各个类的属性;
获取所述各个类的属性之后,为所述各个类添加构造器及getters方法和setters方法,生成相应的JavaBean组件。
可选的,所述通过调用字符串生成方法,将所述待插入的数据对象转换为json字符串,包括:
调用fromObject方法,将所述待插入的数据对象转换为相应的JSONObject对象;
调用字符串格式化toString方法,将所述JSONObject对象转换为相应的json字符串。
可选的,所述获取映射脚本包括:
获取Elasticsearch搜索服务器建立索引index时使用的映射脚本。
第二方面,本申请还提供了一种数据插入装置,包括:
第一获取模块,用于获取映射脚本,并通过所述映射脚本获取各个字段名称对应的字段类型;
组件生成模块,用于根据所述各个字段名称对应的字段类型,获取各个类的属性,并根据所述各个类的属性,生成JavaBean组件;
对象生成模块,用于需要插入数据时,根据各个字段名称对应的字段值和所述JavaBean组件,生成待插入的数据对象;
对象转换模块,用于通过调用字符串生成方法,将所述待插入的数据对象转换为json字符串,并将所述json字符串插入到数据库。
可选的,还包括:
第二获取模块,用于若检测到所述映射脚本发生改变,通过改变后的映射脚本获取各个字段名称对应的改变后的字段类型;
所述组件生成模块还用于,根据所述改变后的字段类型,重新生成并更新所述JavaBean组件;
所述对象生成模块还用于,需要插入数据时,根据所述改变后的字段类型及更新后的所述JavaBean组件生成所述待插入的数据对象。
可选的,所述组件生成模块包括:
属性获取单元,用于在获取所述各个字段名称对应的字段类型后,根据预先设定的字段类型与类的属性的映射关系,获取所述各个类的属性;
组件生成单元,用于获取所述各个类的属性之后,为所述各个类添加构造器及getters方法和setters方法,生成相应的JavaBean组件。
可选的,所述对象转换模块包括:
第一转换单元,用于调用fromObject方法,将所述待插入的数据对象转换为相应的JSONObject对象;
第二转换单元,用于调用字符串格式化toString方法,将所述JSONObject对象转换为相应的json字符串。
可选的,所述第一获取模块用于获取映射脚本具体为:用于获取Elasticsearch搜索服务器建立索引index时使用的映射脚本。
本申请实施例公开的方案具有以下有益效果:
通过本申请实施例公开的数据插入方法及装置,能够向ElasticSearch的数据库中插入数据,并且,该方法避免了字段名称和字段值的拼接,从而避免出现拼接错误的问题,与现有技术相比,提高插入的数据的正确率。
附图说明
为了更清楚地说明本申请的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例公开的一种数据插入方法的工作流程示意图;
图2为本申请实施例公开的一种数据插入装置的结构示意图。
具体实施方式
本申请提供一种数据插入方法及装置,以解决通过现有技术向ElasticSearch的数据库中插入数据时,所存在的插入的数据出错率较高的问题。
本申请的第一实施例公开一种数据插入方法。该方法适用于ElasticSearch搜索服务器将数据插入数据库的应用场景,参见图1所示的工作流程示意图,所述数据插入方法包括以下步骤:
步骤S11、获取映射脚本,并通过所述映射脚本获取各个字段名称对应的字段类型。
其中,所述映射脚本即为mapping脚本,具体为获取Elasticsearch搜索服务器建立索引index时使用的映射脚本,在该映射脚本中,记载了各个字段名称与字段类型(如整数型或字符串型等)之间的映射关系。通过读取该映射脚本,即可获取各个字段名称对应的字段类型。
例如,下述程序为部分映射脚本的示例:
在该映射脚本,设置有“agentId”、“agentName”、“serviceTypeCode”、“serviceTypeName”和“enable”五个字段名称(即key)。
其中,通过上述的映射脚本,可知“agentId”这一字段名称对应的字段类型为integer,即整数型;而第二个字段名称“agentName”对应的字段类型为string,即字符串型;第三个字段名称“serviceTypeCode”、第四个字段名称“serviceTypeName”和第五个字段名称对应的字段类型也均为string,即字符串型。也就是说,通过该映射脚本,即可获取各个字段名称对应的字段类型。
步骤S12、根据所述各个字段名称对应的字段类型,获取各个类的属性,并根据所述各个类的属性,生成JavaBean组件。
其中,各个字段名称对应的字段类型,与JavaBean组件中各个类的属性具有一定的映射关系。例如,若某一个字段名称对应的字段类型为string,则在JavaBean组件中,该字段名称对应的类的属性为String类型。
例如,下述程序为部分JavaBean组件的示例:
步骤S13、需要插入数据时,根据各个字段名称对应的字段值和所述JavaBean组件,生成待插入的数据对象。
其中,各个字段名称对应的字段值(即key)根据实际的需求确定。例如,若需要插入的数据中,包括姓名为张三的数据,则可以确定“agentName”这一字段名称对应的字段值为“张三”。
根据各个字段名称对应的字段值,可以设置所述JavaBean组件中各个类的值,从而得到待插入的数据对象。
步骤S14、通过调用字符串生成方法,将所述待插入的数据对象转换为json字符串,并将所述json字符串插入到数据库。
本申请的第一实施例公开一种数据插入方法,该方法中,在获取映射脚本后,通过所述映射脚本获取各个字段名称对应的字段类型,然后根据各个字段名称对应的字段类型,获取各个类的属性,并根据所述各个类的属性,生成JavaBean组件,再根据各个字段名称对应的字段值和所述JavaBean组件,生成待插入的数据对象,通过调用字符串生成方法,将所述待插入的数据对象转换为json字符串,再将所述json字符串插入到数据库中。
通过本申请实施例公开的数据插入方法,能够向ElasticSearch的数据库中插入数据,并且,该方法避免了字段名称和字段值的拼接,从而避免出现拼接错误的问题,与现有技术相比,提高插入的数据的正确率。
本申请实施例提供又一种数据插入方法的工作流程示意图。该实施例为基于图1改进的实施例,所以与图1相同的内容可参见图1所示的实施例。相对于图1所示的实施例,该实施例还可以包括以下步骤:
首先,若检测到所述映射脚本发生改变,通过改变后的映射脚本获取各个字段名称对应的改变后的字段类型。
在ElasticSearch的应用过程中,受到需求变更,或者数据逻辑改变等各种因素的影响,映射脚本可能会发生改变,导致映射脚本中记录的字段名称与字段类型之间的映射关系发生变化。
例如,映射脚本在改变前,规定“agentId”这一字段名称对应的字段类型为整数型,这种情况下,生成的json字符串可以为{“agentId”:1}的形式。但是,映射脚本在变动后,规定“agentId”这一字段名称对应的字段类型改变为整数型,这种情况下,生成的json字符串可以为{“agentId”:“第一”}的形式。
在该步骤中,读取改变后的映射脚本,即可获取各个字段名称对应的改变后的字段类型。
然后,根据所述改变后的字段类型,重新生成并更新所述JavaBean组件。
然后,需要插入数据时,根据所述改变后的字段类型及更新后的所述JavaBean组件生成所述待插入的数据对象。
在根据改变后的字段类型,以及更新后的所述JavaBean组件,生成所述待插入的数据对象之后,即可执行步骤S14的操作,即调用字符串生成方法,将所述待插入的数据对象转换为json字符串,并将所述json字符串插入到数据库中。
具体的,该实施例中,在获取各个字段名称对应的改变后的字段类型之后,首先根据改变后的字段类型,重新获取各个类在改变后的属性,并根据各个类在改变后的属性,生成新的JavaBean组件。然后,根据各个字段名称对应的字段值和重新生成的JavaBean组件,重新生成待插入的数据对象,并通过调用字符串生成方法,将重新生成的待插入的数据对象转换成json字符串,从而获取改变后的json字符串,再将改变后的json字符串插入至ElasticSearch的数据库中。
现有技术中,当映射脚本发生改变后,需要根据改变后的映射脚本,依次修改拼接后的json语句中各个字段名称对应的字段类型,修改过程较为繁琐,且修改过程中极易出现差错,进一步降低插入的数据的正确率。
而通过本申请实施例公开的数据插入方法,能够根据改变后的映射脚本获取各个字段名称对应的改变后的字段类型,根据所述改变后的字段类型,重新生成并更新所述JavaBean组件;若需要插入数据,根据所述改变后的字段类型及更新后的所述JavaBean组件生成所述待插入的数据对象,并通过调用字符串生成方法,将所述待插入的数据插入到数据库,而不需要依次对拼接后的json语句进行修改,相对于现有技术来说,本申请实施例公开的方法能够提高修改json字符串的正确率,进一步提高插入的数据的正确率。
作为图1方法的细化,在本申请提供的又一实施例中,步骤S12中,所述根据所述各个字段名称对应的字段类型,获取各个类的属性,并根据所述各个类的属性,生成JavaBean组件的操作还可以包括如下步骤:
首先,在获取所述各个字段名称对应的字段类型后,根据预先设定的字段类型与类的属性的映射关系,获取所述各个类的属性。
然后,获取所述各个类的属性之后,为所述各个类添加构造器及getters方法和setters方法,生成相应的JavaBean组件。
字段类型与JavaBean组件中各个类的属性之间,往往具有一定的映射关系。例如,若在映射脚本中,规定某一个字段名称对应的字段类型为string,则在JavaBean组件中,该字段名称对应的类的属性为String类型;若某一个字段名称对应的字段类型为integer,则在JavaBean组件中,该字段名称对应的类的属性为Integer类型。在本申请实施例中,能够预先设定字段类型与类的属性的映射关系,通过查询该映射关系,即可获取各个类的属性。
作为图1方法的细化,在本申请提供的又一实施例中,步骤S14中,所述通过调用字符串生成方法,将所述待插入的数据对象转换为json字符串的操作还可以包括如下步骤:
首先,调用fromObject方法,将所述待插入的数据对象转换为相应的JSONObject对象。具体的,可对所述待插入的数据对象使用net.sf.json.JSONObject中的fromObject方法,将JavaBean对象转换为JSONObject对象。
然后,调用字符串格式化toString方法,将所述JSONObject对象转换为相应的json字符串。toString方法,即字符串格式化方法,用于把对象转换成String类型。
示例性的,可通过如下示例,实现将待插入的数据对象转换为json字符串:
下述为本申请提供的装置实施例,可以用于执行本申请提供的方法实施例。对于本发明装置实施例中未披露的细节,请参照本发明方法实施例。
图2是根据本发明一示例性实施例示出的一种数据插入装置的结构示意图示意图。参见图2,该数据插入装置包括:第一获取模块110、组件生成模块120、对象生成模块130和对象转换模块140。
其中,所述第一获取模块110,用于获取映射脚本,并通过所述映射脚本获取各个字段名称对应的字段类型。
其中,所述映射脚本即为mapping脚本,具体为获取Elasticsearch搜索服务器建立索引index时使用的映射脚本,在该映射脚本中,记载了各个字段名称与字段类型(如整数型或字符串型等)之间的映射关系。通过读取该映射脚本,即可获取各个字段名称对应的字段类型。
所述组件生成模块120,用于根据所述各个字段名称对应的字段类型,获取各个类的属性,并根据所述各个类的属性,生成JavaBean组件。
其中,各个字段名称对应的字段类型,与JavaBean组件中各个类的属性具有一定的映射关系。例如,若某一个字段名称对应的字段类型为string,则在JavaBean组件中,该字段名称对应的类的属性为String类型。
所述对象生成模块130,用于需要插入数据时,根据各个字段名称对应的字段值和所述JavaBean组件,生成待插入的数据对象。
其中,各个字段名称对应的字段值(即key)根据实际的需求确定。例如,若需要插入的数据中,包括姓名为张三的数据,则可以确定“agentName”这一字段名称对应的字段值为“张三”。
根据各个字段名称对应的字段值,可以设置所述JavaBean组件中各个类的值,从而得到待插入的数据对象。
所述对象转换模块140,用于通过调用字符串生成方法,将所述待插入的数据对象转换为json字符串,并将所述json字符串插入到数据库。
通过本申请实施例公开的数据插入装置,能够向ElasticSearch的数据库中插入数据,并且,该方法避免了字段名称和字段值的拼接,从而避免出现拼接错误的问题,与现有技术相比,提高插入的数据的正确率。
在ElasticSearch的应用过程中,受到需求变更,或者数据逻辑改变等各种因素的影响,映射脚本可能会发生改变,导致映射脚本中记录的字段名称与字段类型之间的映射关系发生变化。
这种情况下,进一步的,在本申请实施例提供的数据插入装置中,还包括:第二获取模块。
其中,所述第二获取模块,用于若检测到所述映射脚本发生改变,通过改变后的映射脚本获取各个字段名称对应的改变后的字段类型;
所述组件生成模块还用于,根据所述改变后的字段类型,重新生成并更新所述JavaBean组件;
所述对象生成模块还用于,需要插入数据时,根据所述改变后的字段类型及更新后的所述JavaBean组件生成所述待插入的数据对象。
在通过对象生成模块生成所述待插入的数据对象之后,即可触发对象转换模块执行相应的操作,即调用字符串生成方法,将所述待插入的数据对象转换为json字符串,并将所述json字符串插入到数据库中
现有技术中,当映射脚本发生改变后,需要根据改变后的映射脚本,依次修改拼接后的json语句中各个字段名称对应的字段类型,修改过程较为繁琐,且修改过程中极易出现差错,进一步降低插入的数据的正确率。
而通过本申请实施例公开的数据插入方法,能够根据改变后的映射脚本获取各个字段名称对应的改变后的字段类型,根据所述改变后的字段类型,重新生成并更新所述JavaBean组件;若需要插入数据,根据所述改变后的字段类型及更新后的所述JavaBean组件生成所述待插入的数据对象,并通过调用字符串生成方法,将所述待插入的数据插入到数据库,而不需要依次对拼接后的json语句进行修改,相对于现有技术来说,本申请实施例公开的方法能够提高修改json字符串的正确率,进一步提高插入的数据的正确率。
进一步的,在本申请实施例提供的数据插入装置中,所述组件生成模块包括:
属性获取单元,用于在获取所述各个字段名称对应的字段类型后,根据预先设定的字段类型与类的属性的映射关系,获取所述各个类的属性;
组件生成单元,用于获取所述各个类的属性之后,为所述各个类添加构造器及getters方法和setters方法,生成相应的JavaBean组件。
字段类型与JavaBean组件中各个类的属性之间,往往具有一定的映射关系。例如,若在映射脚本中,规定某一个字段名称对应的字段类型为string,则在JavaBean组件中,该字段名称对应的类的属性为String类型;若某一个字段名称对应的字段类型为integer,则在JavaBean组件中,该字段名称对应的类的属性为Integer类型。在本申请实施例中,能够预先设定字段类型与类的属性的映射关系,通过查询该映射关系,即可获取各个类的属性。
进一步的,在本申请实施例提供的数据插入装置中,所述对象转换模块包括:
第一转换单元,用于调用fromObject方法,将所述待插入的数据对象转换为相应的JSONObject对象;
第二转换单元,用于调用字符串格式化toString方法,将所述JSONObject对象转换为相应的json字符串。toString方法,即字符串格式化方法,用于把对象转换成String类型。
示例性的,所述第一转换单元和第二转换单元可通过如下示例,实现将待插入的数据对象转换为json字符串:
进一步的,所述第一获取模块用于获取映射脚本具体为:用于获取Elasticsearch搜索服务器建立索引index时使用的映射脚本。
具体实现中,本发明还提供一种计算机存储介质,其中,该计算机存储介质可存储有程序,该程序执行时可包括本发明提供的呼叫方法的各实施例中的部分或全部步骤。所述的存储介质可为磁碟、光盘、只读存储记忆体(英文:read-only memory,简称:ROM)或随机存储记忆体(英文:random access memory,简称:RAM)等。
本领域的技术人员可以清楚地了解到本发明实施例中的技术可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明实施例中的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
本说明书中各个实施例之间相同相似的部分互相参见即可。尤其,对于……实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例中的说明即可。
以上所述的本发明实施方式并不构成对本发明保护范围的限定。

Claims (10)

1.一种数据插入方法,其特征在于,包括:
获取映射脚本,并通过所述映射脚本获取各个字段名称对应的字段类型;
根据所述各个字段名称对应的字段类型,获取各个类的属性,并根据所述各个类的属性,生成JavaBean组件;
需要插入数据时,根据各个字段名称对应的字段值和所述JavaBean组件,生成待插入的数据对象;
通过调用字符串生成方法,将所述待插入的数据对象转换为json字符串,并将所述json字符串插入到数据库。
2.根据权利要求1所述的数据插入方法,其特征在于,还包括:
若检测到所述映射脚本发生改变,通过改变后的映射脚本获取各个字段名称对应的改变后的字段类型;
根据所述改变后的字段类型,重新生成并更新所述JavaBean组件;
需要插入数据时,根据所述改变后的字段类型及更新后的所述JavaBean组件生成所述待插入的数据对象。
3.根据权利要求1所述的数据插入方法,其特征在于,所述根据所述各个字段名称对应的字段类型,获取各个类的属性,并根据所述各个类的属性,生成JavaBean组件,包括:
在获取所述各个字段名称对应的字段类型后,根据预先设定的字段类型与类的属性的映射关系,获取所述各个类的属性;
获取所述各个类的属性之后,为所述各个类添加构造器及getters方法和setters方法,生成相应的JavaBean组件。
4.根据权利要求1至3任意一项所述的数据插入方法,其特征在于,所述通过调用字符串生成方法,将所述待插入的数据对象转换为json字符串,包括:
调用fromObject方法,将所述待插入的数据对象转换为相应的JSONObject对象;
调用字符串格式化toString方法,将所述JSONObject对象转换为相应的json字符串。
5.根据权利要求1至3任意一项所述的数据插入方法,其特征在于,所述获取映射脚本包括:
获取Elasticsearch搜索服务器建立索引index时使用的映射脚本。
6.一种数据插入装置,其特征在于,包括:
第一获取模块,用于获取映射脚本,并通过所述映射脚本获取各个字段名称对应的字段类型;
组件生成模块,用于根据所述各个字段名称对应的字段类型,获取各个类的属性,并根据所述各个类的属性,生成JavaBean组件;
对象生成模块,用于需要插入数据时,根据各个字段名称对应的字段值和所述JavaBean组件,生成待插入的数据对象;
对象转换模块,用于通过调用字符串生成方法,将所述待插入的数据对象转换为json字符串,并将所述json字符串插入到数据库。
7.根据权利要求6所述的数据插入装置,其特征在于,还包括:
第二获取模块,用于若检测到所述映射脚本发生改变,通过改变后的映射脚本获取各个字段名称对应的改变后的字段类型;
所述组件生成模块还用于,根据所述改变后的字段类型,重新生成并更新所述JavaBean组件;
所述对象生成模块还用于,需要插入数据时,根据所述改变后的字段类型及更新后的所述JavaBean组件生成所述待插入的数据对象。
8.根据权利要求6所述的数据插入装置,其特征在于,所述组件生成模块包括:
属性获取单元,用于在获取所述各个字段名称对应的字段类型后,根据预先设定的字段类型与类的属性的映射关系,获取所述各个类的属性;
组件生成单元,用于获取所述各个类的属性之后,为所述各个类添加构造器及getters方法和setters方法,生成相应的JavaBean组件。
9.根据权利要求6至8任意一项所述的数据插入装置,其特征在于,所述对象转换模块包括:
第一转换单元,用于调用fromObject方法,将所述待插入的数据对象转换为相应的JSONObject对象;
第二转换单元,用于调用字符串格式化toString方法,将所述JSONObject对象转换为相应的json字符串。
10.根据权利要求6至8任意一项所述的数据插入装置,其特征在于,所述第一获取模块用于获取映射脚本具体为:用于获取Elasticsearch搜索服务器建立索引index时使用的映射脚本。
CN201611222848.4A 2016-12-27 2016-12-27 一种数据插入方法及装置 Active CN108241705B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201611222848.4A CN108241705B (zh) 2016-12-27 2016-12-27 一种数据插入方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611222848.4A CN108241705B (zh) 2016-12-27 2016-12-27 一种数据插入方法及装置

Publications (2)

Publication Number Publication Date
CN108241705A true CN108241705A (zh) 2018-07-03
CN108241705B CN108241705B (zh) 2021-10-01

Family

ID=62702493

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611222848.4A Active CN108241705B (zh) 2016-12-27 2016-12-27 一种数据插入方法及装置

Country Status (1)

Country Link
CN (1) CN108241705B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110825389A (zh) * 2018-08-07 2020-02-21 北京国双科技有限公司 Json字符串的生成方法、装置、存储介质及处理器
CN111061787A (zh) * 2019-11-21 2020-04-24 新浪网技术(中国)有限公司 一种关系型数据库中对象关系的处理方法及系统
CN111143221A (zh) * 2019-12-28 2020-05-12 中国银行股份有限公司 一种测试方法及装置

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6754886B1 (en) * 1998-11-30 2004-06-22 International Business Machines Corporation Method and system for storing java objects in devices having a reduced support of high-level programming concepts
CN1516839A (zh) * 2001-04-25 2004-07-28 Bea系统公司 个性化服务器统一用户特征集
US20080320019A1 (en) * 2007-06-22 2008-12-25 International Business Machines Corporation Pluggable merge patterns for data access services
CN102968307A (zh) * 2012-11-29 2013-03-13 中国传媒大学 一种基于java的web开发中间件
CN104537129A (zh) * 2015-01-30 2015-04-22 中国地质大学(武汉) 一种基于Web的数据库虚拟存储处理方法
CN105512985A (zh) * 2015-12-29 2016-04-20 杭州邦泰科技有限公司 基于openEHR标准的糖尿病电子病历数据存储方法
CN105677390A (zh) * 2015-12-28 2016-06-15 国云科技股份有限公司 一种用于大表单的录入与保存方法
CN105808776A (zh) * 2016-03-29 2016-07-27 中国建设银行股份有限公司 一种分布式数据库的数据管理系统及方法
CN106202207A (zh) * 2016-06-28 2016-12-07 中国电子科技集团公司第二十八研究所 一种基于HBase‑ORM的索引及检索系统

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6754886B1 (en) * 1998-11-30 2004-06-22 International Business Machines Corporation Method and system for storing java objects in devices having a reduced support of high-level programming concepts
CN1516839A (zh) * 2001-04-25 2004-07-28 Bea系统公司 个性化服务器统一用户特征集
US20080320019A1 (en) * 2007-06-22 2008-12-25 International Business Machines Corporation Pluggable merge patterns for data access services
CN102968307A (zh) * 2012-11-29 2013-03-13 中国传媒大学 一种基于java的web开发中间件
CN104537129A (zh) * 2015-01-30 2015-04-22 中国地质大学(武汉) 一种基于Web的数据库虚拟存储处理方法
CN105677390A (zh) * 2015-12-28 2016-06-15 国云科技股份有限公司 一种用于大表单的录入与保存方法
CN105512985A (zh) * 2015-12-29 2016-04-20 杭州邦泰科技有限公司 基于openEHR标准的糖尿病电子病历数据存储方法
CN105808776A (zh) * 2016-03-29 2016-07-27 中国建设银行股份有限公司 一种分布式数据库的数据管理系统及方法
CN106202207A (zh) * 2016-06-28 2016-12-07 中国电子科技集团公司第二十八研究所 一种基于HBase‑ORM的索引及检索系统

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
白俊 等: "基于ElasticSearch的大日志实时搜索的软件集成方案研究", 《吉林师范大学学报(自然科学版)》 *
陈建峡 等: "基于Storm的实时用户日志管理系统", 《湖北工业大学学报》 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110825389A (zh) * 2018-08-07 2020-02-21 北京国双科技有限公司 Json字符串的生成方法、装置、存储介质及处理器
CN111061787A (zh) * 2019-11-21 2020-04-24 新浪网技术(中国)有限公司 一种关系型数据库中对象关系的处理方法及系统
CN111143221A (zh) * 2019-12-28 2020-05-12 中国银行股份有限公司 一种测试方法及装置
CN111143221B (zh) * 2019-12-28 2024-01-30 中国银行股份有限公司 一种测试方法及装置

Also Published As

Publication number Publication date
CN108241705B (zh) 2021-10-01

Similar Documents

Publication Publication Date Title
US10866973B2 (en) Test data management
CN110276023B (zh) Poi变迁事件发现方法、装置、计算设备和介质
US10831799B2 (en) External action execution with conversational agent
CN108985934B (zh) 区块链修改方法和装置
US7680668B2 (en) Method for generating a language-independent regression test script
US9928061B2 (en) Tracking changes within javascript object notation
US8347052B2 (en) Initializing of a memory area
CN110457628A (zh) 网页版本校验方法、装置、设备及存储介质
CN107679059A (zh) 业务模板的匹配方法、装置、计算机设备及存储介质
CN108241705A (zh) 一种数据插入方法及装置
CN106547658A (zh) 一种自动化测试方法及装置
CN110083379A (zh) 一种服务器部件升级方法及相关装置
CN110209780A (zh) 一种问题模板生成方法、装置、服务器及存储介质
CN106991083A (zh) 一种电子文档处理的方法及装置
CN109584091B (zh) 保险图像文件的生成方法与装置
CN111124883A (zh) 一种基于树形表格的测试用例库引入方法、系统及设备
CN106599637A (zh) 一种在验证界面输入验证码的方法和装置
CN116303901A (zh) 一种基于文本聚类的环境公告信息提取方法和装置
CN113704123B (zh) 接口测试方法、装置、设备以及存储介质
CN110059087A (zh) 一种块链式账本中的数据属性标识方法、装置及设备
US11769009B2 (en) Using domain specific vocabularies to spellcheck input strings
CN113724115A (zh) 基于在线教育的数据处理方法及服务器
CN107436918B (zh) 数据库实现方法、装置和设备
CN112199116A (zh) 操作数栈寄存器识别方法、装置、设备及存储介质
KR100825687B1 (ko) 워크벤치 기반의 생물학적 개체명 인식 방법 및 시스템

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
CB02 Change of applicant information

Address after: Room 818, 8 / F, 34 Haidian Street, Haidian District, Beijing 100080

Applicant after: BEIJING ULTRAPOWER SOFTWARE Co.,Ltd.

Address before: 100089 Beijing city Haidian District wanquanzhuang Road No. 28 Wanliu new building block A Room 601

Applicant before: BEIJING ULTRAPOWER SOFTWARE Co.,Ltd.

CB02 Change of applicant information
GR01 Patent grant
GR01 Patent grant