CN111611241A - 一种字典数据操作方法、装置、可读存储介质及终端设备 - Google Patents
一种字典数据操作方法、装置、可读存储介质及终端设备 Download PDFInfo
- Publication number
- CN111611241A CN111611241A CN202010355557.2A CN202010355557A CN111611241A CN 111611241 A CN111611241 A CN 111611241A CN 202010355557 A CN202010355557 A CN 202010355557A CN 111611241 A CN111611241 A CN 111611241A
- Authority
- CN
- China
- Prior art keywords
- dictionary data
- dictionary
- data operation
- identifier
- data
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2365—Ensuring data consistency and integrity
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24552—Database cache management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computational Linguistics (AREA)
- Computer Security & Cryptography (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明属于计算机技术领域,尤其涉及一种字典数据操作方法、装置、计算机可读存储介质及终端设备。所述方法在待执行的目标程序中查找预设的字典数据操作标识符,所述字典数据操作标识符用于指示字典数据操作的类型;确定所述目标程序中的字典数据操作指令,所述字典数据操作指令为与查找到的所述字典数据操作标识符对应的指令;提取所述字典数据操作指令中的字典数据参数,并根据所述字典数据参数和所述字典数据操作的类型执行所述字典数据操作指令。通过本发明,避免了在业务逻辑代码中添加大量与业务不相关的字典数据操作代码,降低了代码的耦合度,从而减少了后续代码维护的成本。
Description
技术领域
本发明属于计算机技术领域,尤其涉及一种字典数据操作方法、装置、计算机可读存储介质及终端设备。
背景技术
目前大多数的系统都会配置有字典数据,也即将数据以字典的形式存储并供用户进行查询使用。例如,可以将所有城市的信息汇总为城市字典,将所有员工的信息汇总为员工字典,将所有客户的信息汇总为客户字典等等。字典数据一般存储在数据库,属于多读少写的数据类型。现有技术中,当需要在程序中对字典数据进行操作时,往往需要在程序的业务逻辑代码中添加大量的字典数据操作代码,而这些字典数据操作代码是和业务不相关的,这样就大大提高了代码的耦合度,从而增加了后续代码维护的成本。
发明内容
有鉴于此,本发明实施例提供了一种字典数据操作方法、装置、计算机可读存储介质及终端设备,以解决现有的字典数据操作代码耦合度高,维护成本较大的问题。
本发明实施例的第一方面提供了一种字典数据操作方法,可以包括:
在待执行的目标程序中查找预设的字典数据操作标识符,所述字典数据操作标识符用于指示字典数据操作的类型;
确定所述目标程序中的字典数据操作指令,所述字典数据操作指令为与查找到的所述字典数据操作标识符对应的指令;
提取所述字典数据操作指令中的字典数据参数,并根据所述字典数据参数和所述字典数据操作的类型执行所述字典数据操作指令。
进一步地,所述字典数据操作标识符包括字典数据加载标识符,所述字典数据加载标识符用于指示对字典数据的加载操作;
所述提取所述字典数据操作指令中的字典数据参数,并根据所述字典数据参数和所述字典数据操作的类型执行所述字典数据操作指令,包括:
若查找到的所述字典数据操作标识符为字典数据加载标识符,则提取所述字典数据操作指令中的字典名、关键字字段名和数据字段名;
从预设的数据库中分别查询与所述关键字字段名对应的第一字段数据,以及与所述数据字段名对应的第二字段数据;
将所述第一字段数据和所述第二字段数据以键值对的形式加载入与所述字典名对应的缓存分区中。
进一步地,所述字典数据操作标识符还包括字典数据更新标识符,所述字典数据更新标识符用于指示对字典数据的更新操作;
所述提取所述字典数据操作指令中的字典数据参数,并根据所述字典数据参数和所述字典数据操作的类型执行所述字典数据操作指令,包括:
若查找到的所述字典数据操作标识符为字典数据更新标识符,则提取所述字典数据操作指令中的字典名;
在预设的缓存区域中查找目标分区,所述目标分区为与所述字典名对应的缓存分区;
对所述目标分区中的字典数据进行更新。
进一步地,所述对所述目标分区中的字典数据进行更新包括:
从更新后的数据库中分别查询与所述目标分区中的关键字字段名对应的第三字段数据,以及与所述目标分区中的数据字段名对应的第四字段数据;
清除所述目标分区中的数据,并将所述第三字段数据和所述第四字段数据以键值对的形式加载入所述目标分区中。
进一步地,所述字典数据操作标识符还包括字典数据查询标识符,所述字典数据查询标识符用于指示对字典数据的查询操作;
所述提取所述字典数据操作指令中的字典数据参数,并根据所述字典数据参数和所述字典数据操作的类型执行所述字典数据操作指令,包括:
若查找到的所述字典数据操作标识符为字典数据查询标识符,则提取所述字典数据操作指令中的字典名、目标关键字和返回值字段名;
在预设的缓存区域中查找目标分区,所述目标分区为与所述字典名对应的缓存分区;
在所述目标分区中的目标字段中查询与所述目标关键字对应的数据,所述目标字段为与所述返回值字段名对应的字段。
本发明实施例的第二方面提供了一种字典数据操作装置,可以包括:
标识符查找模块,用于在待执行的目标程序中查找预设的字典数据操作标识符,所述字典数据操作标识符用于指示字典数据操作的类型;
操作指令确定模块,用于确定所述目标程序中的字典数据操作指令,所述字典数据操作指令为与查找到的所述字典数据操作标识符对应的指令;
操作指令执行模块,用于提取所述字典数据操作指令中的字典数据参数,并根据所述字典数据参数和所述字典数据操作的类型执行所述字典数据操作指令。
进一步地,所述字典数据操作标识符包括字典数据加载标识符,所述字典数据加载标识符用于指示对字典数据的加载操作;
所述操作指令执行模块包括:
第一提取单元,用于若查找到的所述字典数据操作标识符为字典数据加载标识符,则提取所述字典数据操作指令中的字典名、关键字字段名和数据字段名;
数据查询单元,用于从预设的数据库中分别查询与所述关键字字段名对应的第一字段数据,以及与所述数据字段名对应的第二字段数据;
数据加载单元,用于将所述第一字段数据和所述第二字段数据以键值对的形式加载入与所述字典名对应的缓存分区中。
进一步地,所述字典数据操作标识符还包括字典数据更新标识符,所述字典数据更新标识符用于指示对字典数据的更新操作;
所述操作指令执行模块包括:
第二提取单元,用于若查找到的所述字典数据操作标识符为字典数据更新标识符,则提取所述字典数据操作指令中的字典名;
第一分区查找单元,用于在预设的缓存区域中查找目标分区,所述目标分区为与所述字典名对应的缓存分区;
数据更新单元,用于对所述目标分区中的字典数据进行更新。
进一步地,所述数据更新单元包括:
数据查询子单元,用于从更新后的数据库中分别查询与所述目标分区中的关键字字段名对应的第三字段数据,以及与所述目标分区中的数据字段名对应的第四字段数据;
数据更新子单元,用于清除所述目标分区中的数据,并将所述第三字段数据和所述第四字段数据以键值对的形式加载入所述目标分区中。
进一步地,所述字典数据操作标识符还包括字典数据查询标识符,所述字典数据查询标识符用于指示对字典数据的查询操作;
所述操作指令执行模块包括:
第三提取单元,用于若查找到的所述字典数据操作标识符为字典数据查询标识符,则提取所述字典数据操作指令中的字典名、目标关键字和返回值字段名;
第二分区查找单元,用于在预设的缓存区域中查找目标分区,所述目标分区为与所述字典名对应的缓存分区;
数据查询单元,用于在所述目标分区中的目标字段中查询与所述目标关键字对应的数据,所述目标字段为与所述返回值字段名对应的字段。
本发明实施例的第三方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可读指令,所述计算机可读指令被处理器执行时实现如下步骤:
在待执行的目标程序中查找预设的字典数据操作标识符,所述字典数据操作标识符用于指示字典数据操作的类型;
确定所述目标程序中的字典数据操作指令,所述字典数据操作指令为与查找到的所述字典数据操作标识符对应的指令;
提取所述字典数据操作指令中的字典数据参数,并根据所述字典数据参数和所述字典数据操作的类型执行所述字典数据操作指令。
本发明实施例的第四方面提供了一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机可读指令,所述处理器执行所述计算机可读指令时实现如下步骤:
在待执行的目标程序中查找预设的字典数据操作标识符,所述字典数据操作标识符用于指示字典数据操作的类型;
确定所述目标程序中的字典数据操作指令,所述字典数据操作指令为与查找到的所述字典数据操作标识符对应的指令;
提取所述字典数据操作指令中的字典数据参数,并根据所述字典数据参数和所述字典数据操作的类型执行所述字典数据操作指令。
本发明实施例与现有技术相比存在的有益效果是:本发明实施例在待执行的目标程序中查找预设的字典数据操作标识符,所述字典数据操作标识符用于指示字典数据操作的类型;确定所述目标程序中的字典数据操作指令,所述字典数据操作指令为与查找到的所述字典数据操作标识符对应的指令;提取所述字典数据操作指令中的字典数据参数,并根据所述字典数据参数和所述字典数据操作的类型执行所述字典数据操作指令。通过本发明实施例,当需要在程序中对字典数据进行操作时,仅需在程序的业务逻辑代码中添加简单的指令,当执行程序时,会自动通过标识符从程序中确定出该指令,并依据其中的参数以及标识符指示的操作类型来执行字典数据操作。从而避免了在业务逻辑代码中添加大量与业务不相关的字典数据操作代码,降低了代码的耦合度,从而减少了后续代码维护的成本。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1为本发明实施例中一种字典数据操作方法的一个实施例流程图;
图2为执行字典数据加载操作的示意流程图;
图3为将缓存区域划分为多个缓存分区的示意图;
图4为执行字典数据更新操作的示意流程图;
图5为执行字典数据查询操作的示意流程图;
图6为本发明实施例中一种字典数据操作装置的一个实施例结构图;
图7为本发明实施例中一种终端设备的示意框图。
具体实施方式
为使得本发明的发明目的、特征、优点能够更加的明显和易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,下面所描述的实施例仅仅是本发明一部分实施例,而非全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
请参阅图1,本发明实施例中一种字典数据操作方法的一个实施例可以包括:
步骤S101、在待执行的目标程序中查找预设的字典数据操作标识符。
所述字典数据操作标识符用于指示字典数据操作的类型,其中,字典数据操作的类型可以包括但不限于对字典数据的加载操作、更新操作以及查询操作。相应地,所述字典数据操作标识符可以包括但不限于字典数据加载标识符、字典数据更新标识符以及字典数据查询标识符。其中,所述字典数据加载标识符用于指示对字典数据的加载操作,所述字典数据更新标识符用于指示对字典数据的更新操作,所述字典数据查询标识符用于指示对字典数据的查询操作。
所述字典数据操作标识符的具体形式可以根据实际情况进行设置,在本发明实施例的一种具体实现中,可以使用代码注解(Annotation)的形式来表示所述字典数据操作标识符。例如,可以使用注解@DictData表示字典数据加载标识符,可以使用注解@UpdateData表示字典数据更新标识符,可以使用注解@LookData表示字典数据查询标识符。
需要注意的是,以上的字典数据操作标识符的设置仅为示例,而非具体限定,在实际应用中,可以根据具体的情况设置其它的形式,本发明实施例对此不再赘述。
步骤S102、确定所述目标程序中的字典数据操作指令。
所述字典数据操作指令为与查找到的所述字典数据操作标识符对应的指令。在本发明实施例的一种具体实现中,对任意一个字典数据操作标识符而言,其所在的代码行以及其后的第一个代码行即可作为与其对应的字典数据操作指令。
步骤S103、提取所述字典数据操作指令中的字典数据参数,并根据所述字典数据参数和所述字典数据操作的类型执行所述字典数据操作指令。
具体地,若查找到的所述字典数据操作标识符为字典数据加载标识符,则步骤S103具体可以包括如图2所示的过程:
步骤S201、提取所述字典数据操作指令中的字典名、关键字字段名和数据字段名。
以下为包含所述字典数据加载标识符的一段代码实例:
其中的字典数据操作指令即为:
@DictData(dictName="city",key="cityCode",value="cityName")
List<City>getAllCity();
其中的字典数据参数可以包括字典名(即dictName)、关键字字段名(即key)以及数据字段名(即value),所述字典名的值为city(即dictName="city"),所述关键字字段名的值为(即key="cityCode"),所述数据字段名的值为(即value="cityName")。
步骤S202、从预设的数据库中分别查询与所述关键字字段名对应的第一字段数据,以及与所述数据字段名对应的第二字段数据。
例如,可在所述数据库中查询与关键字字段名对应的字段,也即所述数据库中字段名为"cityCode"的字段,该字段为城市的编号,将其作为所述第一字段数据;可在所述数据库中查询与数据字段名对应的字段,也即所述数据库中字段名为"cityName"的字段,该字段为城市的名称,将其作为所述第二字段数据。
步骤S203、将所述第一字段数据和所述第二字段数据以键值对的形式加载入与所述字典名对应的缓存分区中。
在本发明实施例中,可以将所述第一字段数据和所述第二字段数据用键值对(key-value)的形式来表示,如下所示:
002211(key)-深圳(value)
002212(key)-广州(value)
002213(key)-佛山(value)
002214(key)-珠海(value)
……。
在本发明实施例中,可以预先在执行程序的终端设备中设置一块缓存区域,用于存储各种字典数据,优选地,如图3所示,可以将该缓存区域划分为多个缓存分区,其中,每个缓存分区均用于存储一种字典数据,例如,缓存分区1可以用于存储将所有城市的信息汇总成的城市字典,缓存分区2可以用于存储将所有员工的信息汇总成的员工字典,缓存分区3可以用于存储将所有客户的信息汇总成的客户字典,以此类推。各个缓存分区均以其存储的字典数据的字典名(即上例中的"city")来命名,以便于区分。
在后续进行数据查询时,无需再去数据库中进行查询,而是直接在缓存中进行查询,缓存中的查询速度要远远大于数据库中的查询速度,可以极大提升整体效率。而且,由于对于每一种类型的字典数据,均可以预先设置其对应的缓存分区,不同的字典数据存储在不同的缓存分区中,后续在进行字典查询时,均需在对应的缓存分区中进行查询即可,无需查询整个缓存,进一步提升整体效率。
由于数据库中的数据并不是固定不变的,可能会随着业务的变动而不断发生改变,为了保证缓存中存储的数据与数据库中的数据始终保持一致,在本发明实施例中,可以对需要更新的字典数据添加对应的字典数据更新标识符。当数据库中的某一字典数据发生更新(包括但不限于增加数据、删除数据和修改数据)时,会同步对相应的缓存分区也进行更新,即使用数据库中更新后的数据覆盖掉缓存分区中的原有数据。
优选地,由于不同的字典数据是存储在不同的缓存分区中的,在进行字典更新时,仅需重新加载发生更新的字典数据即可,而无需更新整个缓存。具体地,若查找到的所述字典数据操作标识符为字典数据更新标识符,则步骤S103具体可以包括如图4所示的过程:
步骤S401、提取所述字典数据操作指令中的字典名。
以下为包含所述字典数据加载标识符的一段代码实例:
其中的字典数据操作指令即为:
@UpdateDict(dictName="city")
public void updateCity(City city);
其中的字典数据参数可以包括字典名(即dictName),所述字典名的值为city(即dictName="city")。
步骤S402、在预设的缓存区域中查找目标分区。
所述目标分区为与所述字典名对应的缓存分区,由于不同的字典数据是存储在不同的缓存分区中的,在进行字典更新时,仅需重新加载发生更新的字典数据即可,即仅需更新所述目标分区,而无需更新整个缓存。
步骤S403、对所述目标分区中的字典数据进行更新。
具体地,可以从更新后的数据库中分别查询与所述目标分区中的关键字字段名对应的第三字段数据,以及与所述目标分区中的数据字段名对应的第四字段数据,然后清除所述目标分区中的数据,并将所述第三字段数据和所述第四字段数据以键值对的形式加载入所述目标分区中。
若查找到的所述字典数据操作标识符为字典数据查询标识符,则步骤S103具体可以包括如图5所示的过程:
步骤S501、提取所述字典数据操作指令中的字典名、目标关键字和返回值字段名。
以下为包含所述字典数据查询标识符的一段代码实例:
其中的字典数据操作指令即为:
@LookDict(dictName="city",descName="cityName")
private String cityId(002211);
其中的字典数据参数可以包括字典名(即dictName)、目标关键字(即cityId)以及返回值字段名(即descName),所述字典名的值为city(即dictName="city"),所述目标关键字的值为002211,所述返回值字段名的为cityName(即descName="cityName")。
步骤S502、在预设的缓存区域中查找目标分区。
所述目标分区为与所述字典名对应的缓存分区,由于不同的字典数据是存储在不同的缓存分区中的,在进行字典查询时,仅需在与所述字典名对应的缓存分区,也即所述目标分区中进行查询即可,而无需查询整个缓存区域。
步骤S503、在所述目标分区中的目标字段中查询与所述目标关键字对应的数据。
所述目标字段为与所述返回值字段名对应的字段。以步骤S501中的代码为例,即为通过key值002211去查询缓存分区city中的字典数据,通过cityName字段返回来。返回到前端的json格式如下:
{
"cityId":"002211",
"cityName":"深圳"
}
在定义完成注解后,还需要定义与之对应的切面类,针对以上三个字典数据操作标识符,三个切面类分别为:DictDataAspect、UpdateDictAspect和LookDictAspect。其中,DictDataAspect切面类对应的是@DictData,该切面主要功能是将查询到的数据自动转换成缓存字典。UpdateDictAspect切面对应@UpdateDict,在改动字典数据表时,该切面会将相对应的字典缓存重新加载。LookDictAspect切面对应@LookDict,会自动查询字典信息,然后返回相应的字段到前端。
通过以上过程,将字典数据操作的过程全部通过注解的方式实现,避免了与业务无关的代码耦合,例如,现有技术中在进行字典数据查询(包括单表查询及联表查询,其中,单表查询为在单个字典中进行查询,联表查询为在多个字典中进行查询)时,需要在业务逻辑的代码中写出查询字典数据的代码逻辑,如下所示:
业务逻辑代码1
业务逻辑代码2
……
业务逻辑代码M
字典数据查询逻辑代码1
字典数据查询逻辑代码2
……
字典数据查询逻辑代码N
业务逻辑代码M+1(假设此次使用到字典数据的查询结果)
业务逻辑代码M+2
……
而通过本发明实施例,字典数据查询的逻辑代码无需在业务逻辑的代码中进行体现,只需在需要使用字典数据查询结果的逻辑代码处使用注解即可,即变为如下形式:
业务逻辑代码1
业务逻辑代码2
……
业务逻辑代码M
业务逻辑代码M+1(使用注解)
业务逻辑代码M+2
……
通过@DictData,还可以灵活的将某个数据表的某些字段当作字典来使用,无需将相关信息保持到字典表中。比如,若要将公司的部门信息当作字典来使用,只需要在查询部门信息的接口加上@DictData即可,无需专门写相关的代码。修改字典数据时候,无需全部重新加载字典数据,也无需去调用加载字典的相关代码,@UpdateDict将会自动完成字典更新,降低代码耦合度,提高了性能,也保持了数据的实时一致性。而且,本发明实施例的方案是在程序运行时使用,只有在首次使用到某个字典数据时,才会将数据库的信息加载到缓存中,无需在系统启动时将所有的字典数据都加载到缓存中,可以降低服务器的内存压力。
综上所述,本发明实施例在待执行的目标程序中查找预设的字典数据操作标识符,所述字典数据操作标识符用于指示字典数据操作的类型;确定所述目标程序中的字典数据操作指令,所述字典数据操作指令为与查找到的所述字典数据操作标识符对应的指令;提取所述字典数据操作指令中的字典数据参数,并根据所述字典数据参数和所述字典数据操作的类型执行所述字典数据操作指令。通过本发明实施例,当需要在程序中对字典数据进行操作时,仅需在程序的业务逻辑代码中添加简单的指令,当执行程序时,会自动通过标识符从程序中确定出该指令,并依据其中的参数以及标识符指示的操作类型来执行字典数据操作。从而避免了在业务逻辑代码中添加大量与业务不相关的字典数据操作代码,降低了代码的耦合度,从而减少了后续代码维护的成本。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
对应于上文实施例所述的一种字典数据操作方法,图6示出了本发明实施例提供的一种字典数据操作装置的一个实施例结构图。
本实施例中,一种字典数据操作装置可以包括:
标识符查找模块601,用于在待执行的目标程序中查找预设的字典数据操作标识符,所述字典数据操作标识符用于指示字典数据操作的类型;
操作指令确定模块602,用于确定所述目标程序中的字典数据操作指令,所述字典数据操作指令为与查找到的所述字典数据操作标识符对应的指令;
操作指令执行模块603,用于提取所述字典数据操作指令中的字典数据参数,并根据所述字典数据参数和所述字典数据操作的类型执行所述字典数据操作指令。
进一步地,所述字典数据操作标识符包括字典数据加载标识符,所述字典数据加载标识符用于指示对字典数据的加载操作;
所述操作指令执行模块包括:
第一提取单元,用于若查找到的所述字典数据操作标识符为字典数据加载标识符,则提取所述字典数据操作指令中的字典名、关键字字段名和数据字段名;
数据查询单元,用于从预设的数据库中分别查询与所述关键字字段名对应的第一字段数据,以及与所述数据字段名对应的第二字段数据;
数据加载单元,用于将所述第一字段数据和所述第二字段数据以键值对的形式加载入与所述字典名对应的缓存分区中。
进一步地,所述字典数据操作标识符还包括字典数据更新标识符,所述字典数据更新标识符用于指示对字典数据的更新操作;
所述操作指令执行模块包括:
第二提取单元,用于若查找到的所述字典数据操作标识符为字典数据更新标识符,则提取所述字典数据操作指令中的字典名;
第一分区查找单元,用于在预设的缓存区域中查找目标分区,所述目标分区为与所述字典名对应的缓存分区;
数据更新单元,用于对所述目标分区中的字典数据进行更新。
进一步地,所述数据更新单元包括:
数据查询子单元,用于从更新后的数据库中分别查询与所述目标分区中的关键字字段名对应的第三字段数据,以及与所述目标分区中的数据字段名对应的第四字段数据;
数据更新子单元,用于清除所述目标分区中的数据,并将所述第三字段数据和所述第四字段数据以键值对的形式加载入所述目标分区中。
进一步地,所述字典数据操作标识符还包括字典数据查询标识符,所述字典数据查询标识符用于指示对字典数据的查询操作;
所述操作指令执行模块包括:
第三提取单元,用于若查找到的所述字典数据操作标识符为字典数据查询标识符,则提取所述字典数据操作指令中的字典名、目标关键字和返回值字段名;
第二分区查找单元,用于在预设的缓存区域中查找目标分区,所述目标分区为与所述字典名对应的缓存分区;
数据查询单元,用于在所述目标分区中的目标字段中查询与所述目标关键字对应的数据,所述目标字段为与所述返回值字段名对应的字段。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置,模块和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
图7示出了本发明实施例提供的一种终端设备的示意框图,为了便于说明,仅示出了与本发明实施例相关的部分。
在本实施例中,所述终端设备7可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。该终端设备7可包括:处理器70、存储器71以及存储在所述存储器71中并可在所述处理器70上运行的计算机可读指令72,例如执行上述的字典数据操作方法的计算机可读指令。所述处理器70执行所述计算机可读指令72时实现上述各个字典数据操作方法实施例中的步骤,例如图1所示的步骤S101至S103。或者,所述处理器70执行所述计算机可读指令72时实现上述各装置实施例中各模块/单元的功能,例如图6所示模块601至603的功能。
示例性的,所述计算机可读指令72可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器71中,并由所述处理器70执行,以完成本发明。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机可读指令段,该指令段用于描述所述计算机可读指令72在所述终端设备7中的执行过程。
所述处理器70可以是中央处理单元(Central Processing Unit,CPU),还可以是其它通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其它可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器71可以是所述终端设备7的内部存储单元,例如终端设备7的硬盘或内存。所述存储器71也可以是所述终端设备7的外部存储设备,例如所述终端设备7上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器71还可以既包括所述终端设备7的内部存储单元也包括外部存储设备。所述存储器71用于存储所述计算机可读指令以及所述终端设备7所需的其它指令和数据。所述存储器71还可以用于暂时地存储已经输出或者将要输出的数据。
在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干计算机可读指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储计算机可读指令的介质。
以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种字典数据操作方法,其特征在于,包括:
在待执行的目标程序中查找预设的字典数据操作标识符,所述字典数据操作标识符用于指示字典数据操作的类型;
确定所述目标程序中的字典数据操作指令,所述字典数据操作指令为与查找到的所述字典数据操作标识符对应的指令;
提取所述字典数据操作指令中的字典数据参数,并根据所述字典数据参数和所述字典数据操作的类型执行所述字典数据操作指令。
2.根据权利要求1所述的字典数据操作方法,其特征在于,所述字典数据操作标识符包括字典数据加载标识符,所述字典数据加载标识符用于指示对字典数据的加载操作;
所述提取所述字典数据操作指令中的字典数据参数,并根据所述字典数据参数和所述字典数据操作的类型执行所述字典数据操作指令,包括:
若查找到的所述字典数据操作标识符为字典数据加载标识符,则提取所述字典数据操作指令中的字典名、关键字字段名和数据字段名;
从预设的数据库中分别查询与所述关键字字段名对应的第一字段数据,以及与所述数据字段名对应的第二字段数据;
将所述第一字段数据和所述第二字段数据以键值对的形式加载入与所述字典名对应的缓存分区中。
3.根据权利要求2所述的字典数据操作方法,其特征在于,所述字典数据操作标识符还包括字典数据更新标识符,所述字典数据更新标识符用于指示对字典数据的更新操作;
所述提取所述字典数据操作指令中的字典数据参数,并根据所述字典数据参数和所述字典数据操作的类型执行所述字典数据操作指令,包括:
若查找到的所述字典数据操作标识符为字典数据更新标识符,则提取所述字典数据操作指令中的字典名;
在预设的缓存区域中查找目标分区,所述目标分区为与所述字典名对应的缓存分区;
对所述目标分区中的字典数据进行更新。
4.根据权利要求3所述的字典数据操作方法,其特征在于,所述对所述目标分区中的字典数据进行更新包括:
从更新后的数据库中分别查询与所述目标分区中的关键字字段名对应的第三字段数据,以及与所述目标分区中的数据字段名对应的第四字段数据;
清除所述目标分区中的数据,并将所述第三字段数据和所述第四字段数据以键值对的形式加载入所述目标分区中。
5.根据权利要求2所述的字典数据操作方法,其特征在于,所述字典数据操作标识符还包括字典数据查询标识符,所述字典数据查询标识符用于指示对字典数据的查询操作;
所述提取所述字典数据操作指令中的字典数据参数,并根据所述字典数据参数和所述字典数据操作的类型执行所述字典数据操作指令,包括:
若查找到的所述字典数据操作标识符为字典数据查询标识符,则提取所述字典数据操作指令中的字典名、目标关键字和返回值字段名;
在预设的缓存区域中查找目标分区,所述目标分区为与所述字典名对应的缓存分区;
在所述目标分区中的目标字段中查询与所述目标关键字对应的数据,所述目标字段为与所述返回值字段名对应的字段。
6.一种字典数据操作装置,其特征在于,包括:
标识符查找模块,用于在待执行的目标程序中查找预设的字典数据操作标识符,所述字典数据操作标识符用于指示字典数据操作的类型;
操作指令确定模块,用于确定所述目标程序中的字典数据操作指令,所述字典数据操作指令为与查找到的所述字典数据操作标识符对应的指令;
操作指令执行模块,用于提取所述字典数据操作指令中的字典数据参数,并根据所述字典数据参数和所述字典数据操作的类型执行所述字典数据操作指令。
7.根据权利要求6所述的字典数据操作装置,其特征在于,所述字典数据操作标识符包括字典数据加载标识符,所述字典数据加载标识符用于指示对字典数据的加载操作;
所述操作指令执行模块包括:
第一提取单元,用于若查找到的所述字典数据操作标识符为字典数据加载标识符,则提取所述字典数据操作指令中的字典名、关键字字段名和数据字段名;
数据查询单元,用于从预设的数据库中分别查询与所述关键字字段名对应的第一字段数据,以及与所述数据字段名对应的第二字段数据;
数据加载单元,用于将所述第一字段数据和所述第二字段数据以键值对的形式加载入与所述字典名对应的缓存分区中。
8.根据权利要求6所述的字典数据操作装置,其特征在于,所述字典数据操作标识符还包括字典数据更新标识符,所述字典数据更新标识符用于指示对字典数据的更新操作;
所述操作指令执行模块包括:
第二提取单元,用于若查找到的所述字典数据操作标识符为字典数据更新标识符,则提取所述字典数据操作指令中的字典名;
第一分区查找单元,用于在预设的缓存区域中查找目标分区,所述目标分区为与所述字典名对应的缓存分区;
数据更新单元,用于对所述目标分区中的字典数据进行更新。
9.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可读指令,其特征在于,所述计算机可读指令被处理器执行时实现如权利要求1至5中任一项所述的字典数据操作方法的步骤。
10.一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机可读指令,其特征在于,所述处理器执行所述计算机可读指令时实现如权利要求1至5中任一项所述的字典数据操作方法的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010355557.2A CN111611241A (zh) | 2020-04-29 | 2020-04-29 | 一种字典数据操作方法、装置、可读存储介质及终端设备 |
PCT/CN2020/119296 WO2021218033A1 (zh) | 2020-04-29 | 2020-09-30 | 一种字典数据操作方法、装置、可读存储介质及终端设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010355557.2A CN111611241A (zh) | 2020-04-29 | 2020-04-29 | 一种字典数据操作方法、装置、可读存储介质及终端设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111611241A true CN111611241A (zh) | 2020-09-01 |
Family
ID=72199731
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010355557.2A Pending CN111611241A (zh) | 2020-04-29 | 2020-04-29 | 一种字典数据操作方法、装置、可读存储介质及终端设备 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN111611241A (zh) |
WO (1) | WO2021218033A1 (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112540834A (zh) * | 2020-12-18 | 2021-03-23 | 郑州阿帕斯数云信息科技有限公司 | 一种分布式事务中的缓存处理方法、装置及其设备 |
WO2021218033A1 (zh) * | 2020-04-29 | 2021-11-04 | 平安科技(深圳)有限公司 | 一种字典数据操作方法、装置、可读存储介质及终端设备 |
CN114676686A (zh) * | 2022-05-30 | 2022-06-28 | 恒生电子股份有限公司 | 数据字典处理方法、翻译方法及相关装置 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105468717B (zh) * | 2015-11-20 | 2020-11-10 | 北京百度网讯科技有限公司 | 数据库操作方法和装置 |
TWI611292B (zh) * | 2016-03-08 | 2018-01-11 | 慧榮科技股份有限公司 | 函式管理方法與記憶體裝置 |
CN109726217B (zh) * | 2019-01-10 | 2021-06-18 | 北京字节跳动网络技术有限公司 | 一种数据库操作方法、装置、设备及存储介质 |
CN110083617B (zh) * | 2019-05-05 | 2021-06-01 | 上海达梦数据库有限公司 | 一种ddl语句的处理方法、装置、电子设备和介质 |
CN111611241A (zh) * | 2020-04-29 | 2020-09-01 | 平安科技(深圳)有限公司 | 一种字典数据操作方法、装置、可读存储介质及终端设备 |
-
2020
- 2020-04-29 CN CN202010355557.2A patent/CN111611241A/zh active Pending
- 2020-09-30 WO PCT/CN2020/119296 patent/WO2021218033A1/zh active Application Filing
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021218033A1 (zh) * | 2020-04-29 | 2021-11-04 | 平安科技(深圳)有限公司 | 一种字典数据操作方法、装置、可读存储介质及终端设备 |
CN112540834A (zh) * | 2020-12-18 | 2021-03-23 | 郑州阿帕斯数云信息科技有限公司 | 一种分布式事务中的缓存处理方法、装置及其设备 |
CN112540834B (zh) * | 2020-12-18 | 2023-04-14 | 郑州阿帕斯数云信息科技有限公司 | 一种分布式事务中的缓存处理方法、装置及其设备 |
CN114676686A (zh) * | 2022-05-30 | 2022-06-28 | 恒生电子股份有限公司 | 数据字典处理方法、翻译方法及相关装置 |
Also Published As
Publication number | Publication date |
---|---|
WO2021218033A1 (zh) | 2021-11-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111046034B (zh) | 管理内存数据及在内存中维护数据的方法和系统 | |
CN111611241A (zh) | 一种字典数据操作方法、装置、可读存储介质及终端设备 | |
KR102361153B1 (ko) | 데이터 유형에 관련된 데이터 프로파일링 동작 관리 | |
CN110020086B (zh) | 一种用户画像查询方法及装置 | |
WO2019134340A1 (zh) | 薪资计算方法、应用服务器及计算机可读存储介质 | |
US20140067823A1 (en) | Textual Search for Numerical Properties | |
CN116955361A (zh) | 存储器内密钥范围搜索方法和系统 | |
JP7052145B2 (ja) | 大量な文書コーパスにおけるトークン・マッチング | |
CN110704194A (zh) | 管理内存数据及在内存中维护数据的方法和系统 | |
CN112612827A (zh) | 数据库分页查询方法、装置、计算机设备及存储介质 | |
US20190065548A1 (en) | Method and system of optimizing database system, electronic device and storage medium | |
CN112307062B (zh) | 数据库聚合查询方法、装置及系统 | |
WO2021174836A1 (zh) | 差分包生成方法方法、装置、计算机设备及存储介质 | |
CN112528067A (zh) | 图数据库的存储方法、读取方法、装置及设备 | |
CN108446989B (zh) | 手续费确定方法及终端设备 | |
CN113032393A (zh) | 一种绑定关联对象的方法和装置 | |
US10956125B2 (en) | Data shuffling with hierarchical tuple spaces | |
CN113722600A (zh) | 应用于大数据的数据查询方法、装置、设备及产品 | |
CN112000848A (zh) | 一种图数据处理方法、装置、电子设备及存储介质 | |
CN113342813B (zh) | 键值数据处理方法、装置、计算机设备及可读存储介质 | |
CN110032445B (zh) | 大数据聚集计算方法及装置 | |
CN111309704B (zh) | 数据库操作方法和数据库操作系统 | |
WO2017019883A1 (en) | Locality-sensitive hashing for algebraic expressions | |
CN111611245B (zh) | 处理数据表的方法和系统 | |
WO2011102935A1 (en) | Systems and methods for message-based distributed computing |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40033131 Country of ref document: HK |
|
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |