CN105893587A - 白名单生成方法和相关的用于数据存取的装置及方法 - Google Patents
白名单生成方法和相关的用于数据存取的装置及方法 Download PDFInfo
- Publication number
- CN105893587A CN105893587A CN201610207752.4A CN201610207752A CN105893587A CN 105893587 A CN105893587 A CN 105893587A CN 201610207752 A CN201610207752 A CN 201610207752A CN 105893587 A CN105893587 A CN 105893587A
- Authority
- CN
- China
- Prior art keywords
- mapping ruler
- data
- white list
- storehouse
- mapping
- 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
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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种白名单生成方法和相关的用于数据存取的装置及方法。所述装置可以包括:映射规则库,存储有映射规则;SQL生成模块,用于从所述映射规则库抽取映射规则并根据所述抽取的映射规则生成SQL语句;持久对象存取模块,用于根据所述SQL语句对关系数据库进行对象数据的存取操作。通过从数据字典(即映射规则库)中抽取信息来生成相应的SQL语句,这种抽取生成的过程降低了持久层的存取对象的时间,大大的提升了性能。
Description
技术领域
本发明涉及通信领域,更为具体而言,涉及一种白名单生成方法和相关的用于数据存取的装置及方法。
背景技术
白名单(white list),是相对于黑名单而言的,设置能通过的用户,而白名单以外的用户都不能通过。
在电子商务平台(例如,中国建设银行的电子商务善融平台)上进行营销促销活动需要经常创建白名单。
由于在营销活动上经常需要白名单来进行控制策略,传统的白名单加载不方便,并且存在时延。按照业务规范,需要建立白名单,在白名单中的用户才能参与电商促销活动,由于服务对象名单每天都会新增或变化,需要经常进行白名单加载操作,工作量大,且十分繁琐。
因此,本发明的发明人发现目前亟需一种在数据持久层能够快速进行数据存取操作的方法来进行白名单的创建。
发明内容
鉴于现有技术的上述缺陷,本发明的实施方式提供了一种白名单生成方法和相关的用于数据存取的装置及方法,可以在白名单的创建过程中持久层快速地存取对象。
根据本发明的一种实施方式,提供了一种用于数据持久层进行数据存取的装置。其中,所述装置可以包括:映射规则库,存储有映射规则;SQL(Structured Query Language,结构化查询语言)生成模块,用于从所述映射规则库抽取映射规则并根据所述抽取的映射规则生成SQL语句;持久对象存取模块,用于根据所述SQL语句对关系数据库进行对象数据的存取操作。
根据本发明的另一种实施方式,提供了一种数据持久层进行数据存取的方法。具体地,所述方法可以包括:从映射规则库抽取映射规则;根据所述映射规则生成SQL语句;根据所述SQL语句对关系数据库进行数据存取操作。
根据本发明的其他实施方式,提供了一种白名单生成方法,所述方法可以包括:在映射规则库中存放了对象与白名单表之间的对应关系;当业务逻辑的白名单对象需要持久时,发消息给持久层;所述持久层依据本文实施方式所述的数据持久层进行数据存取的方法进行操作,以读取生成白名单所需的数据;所述业务逻辑根据所述读取的数据生成白名单表。
采用本发明的各种实施方式具有下述有益效果:
本发明各实施方式在持久层中采用快速技术,即从数据字典(即映射规则库)中抽取信息生成相应的SQL语句,抽取生成的过程降低了持久层的存取对象的时间,大大的提升了性能,从而能够快速实时地创建白名单表。
附图说明
图1示出了根据本发明实施方式的用于数据持久层进行数据存取的装置的实施例1;
图2示出了根据本发明实施方式的用于数据持久层进行数据存取的装置的实施例2;
图3示出了根据本发明实施方式的用于数据持久层进行数据存取的装置的实施例3;
图4示出了根据本发明实施方式的用于数据持久层进行数据存取的装置的实施例4;
图5示出了根据本发明实施方式的数据持久层进行数据存取的方法的一例;
图6是示出了根据本发明各种实施方式的白名单快速生成的处理逻辑的逻辑架构图。
具体实施方式
为了便于理解本发明技术方案的各个方面、特征以及优点,下面结合附图对本发明进行具体描述。应当理解,下述的各种实施方式只用于举例说明,而非用于限制本发明的保护范围。
【实施例1】
参考图1,其示出了根据本发明实施方式的用于数据持久层进行数据存取的装置的实施例1。在本发明实施例中,所述装置可以包括,但不限于:映射规则库1100、SQL生成模块1200和持久对象存取模块1300。
具体地,映射规则库1100可以存储有映射规则,所述映射规则体现了将对象到关系数据库的映射机制。SQL生成模块1200可用于从所述映射规则库1100抽取映射规则并根据所述抽取的映射规则生成SQL语句。持久对象存取模块1300可用于根据所述SQL语句对关系数据库进行对象数据的存取操作,所述存取操作包括但不限于选择、***、更新、删除等。
根据本发明实施例,从映射规则库动态地抽取信息,并生成相应的SQL语句,这样的抽取生成的过程降低了持久层存取对象的时间,大大的提升了性能,这有助于快速实时地创建白名单表。
【实施例2】
参考图2,其示出了根据本发明实施方式的用于数据持久层进行数据存取的装置的实施例2。在本发明实施例中,所述装置可以包括,但不限于:映射生成模块2000、映射规则库2100、SQL生成模块2200和持久对象存取模块2300。
具体地,映射生成模块2000可用于将对象到所述关系数据库的映射机制写入到所述映射规则库2100中,其中,映射规则库2100可以存储所述映射规则。SQL生成模块2200可用于从所述映射规则库2100抽取映射规则并根据所述抽取的映射规则生成SQL语句。持久对象存取模块2300可用于根据所述SQL语句对关系数据库进行对象数据的存取操作,所述存取操作包括但不限于选择、***、更新、删除等。
根据本发明实施例,从映射规则库动态地抽取信息,并生成相应的SQL语句,这样的抽取生成的过程降低了持久层存取对象的时间,大大的提升了性能,这有助于快速实时地创建白名单表。进一步地,根据本发明实施例,可以通过映射生成模块对映射规则库的映射规则进行维护,从而可以根据实际需求,生成各种不同的映射规则。即,采用本发明可以满足电商平台的不同营销活动的需求。
【实施例3】
参考图3,其示出了根据本发明实施方式的用于数据持久层进行数据存取的装置的实施例3。在本发明实施例中,所述装置可以包括,但不限于:映射规则库3100、SQL生成模块3200、持久对象存取模块3300、以及XML读取模块3400。
具体地,在本发明实施例中,映射规则库3100以可扩展标记语言(eXtensible Markup Language,XML)文件的形式存储映射规则,所述映射规则体现了将对象到关系数据库的映射机制。XML读取模块3400可用于加载所述映射规则库3100中的XML文件并且从所述XML文件中读取数据(即映射规则),将数据发送给所述SQL生成模块3200。SQL生成模块3200进而根据所述映射规则生成SQL语句。持久对象存取模块3300可用于根据所述SQL语句对关系数据库进行对象数据的存取操作。
根据本发明实施例,从映射规则库动态地抽取信息,并生成相应的SQL语句,这样的抽取生成的过程降低了持久层存取对象的时间,大大的提升了性能,这有助于快速实时地创建白名单表。此外,映射规则采用XML格式保存,增强了持久层的可移植性。
【实施例4】
参考图4,其示出了根据本发明实施方式的用于数据持久层进行数据存取的装置的实施例4。
如图4所示,本发明实施例所述的装置主要包括五个模块,分别是SQL生成模块4200、持久化对象存取模块4300、XML读取模块4400、映射生成模块4000与映射规则库4100。
其中,映射生成模块4000将对象到关系数据库6000的映射机制写入到映射规则库4100中;XML读取模块4400加载规则库中的文件并且读取数据,将数据发送给SQL生成模块4200;SQL生成模块4200根据传送过来的映射规则生成即拼装相应的SQL语句,持久对象存取模块4300根据SQL语句来实现持久对象的存取,包括但不限于对关系数据库6000进行选择、***、更新和删除等操作。
例如:当一个业务逻辑类5000(例如Class Obj),需要生成白名单时,则向持久层发出检索消息(例如,retrieve消息);持久层收到消息之后,XML读取模块从映射规则库中搜索出Obj的映射条件和属性等规则,发送给SQL生成模块;SQL生成模块根据映射规则生成相应的SQL语句:create tablecrossborder_whitelist;持久对象存取模块依据SQL语句从关系数据库6000中读取数据,返回给Class obj;Class obj根据读取的数据生成白名单。
为了实现能够快速实时地创建白名单表,本发明各实施方式在持久层中采用快速技术,即持久层通过根据数据字典(即映射规则库)中的不同对象、不同属性、不同的表和列等信息从数据字典中动态地抽取信息来组装成相应的SQL语句(如建立(CREATE)、***(INSERT)等),这种动态的抽取拼装的过程降低了持久层的存取对象的时间,大大的提升了性能。
以上对本发明实施方式的用于数据持久层进行数据存取的装置进行了说明,下面结合图5对本发明实施方式的方法进行具体说明。
如图5所示,其示出了根据本发明实施方式的数据持久层进行数据存取的方法的一个例子。根据本发明的一种实施方式,所述方法可以包括:
S510.从映射规则库抽取映射规则;
S520.根据所述映射规则生成SQL语句;
S530.根据所述SQL语句对关系数据库进行数据存取操作。
根据本发明实施例,从映射规则库动态地抽取信息,并生成相应的SQL语句,这样的抽取生成的过程降低了持久层存取对象的时间,大大的提升了性能,这有助于快速实时地创建白名单表。
根据本发明的另一种实施方式,所述方法可以还包括预先将对象到所述关系数据库的映射机制写入到所述映射规则库中。
在本发明的一种优选实施方式中,所述映射规则库以XML文件的形式存储所述映射规则。此外,或者作为选择,所述方法进一步可以包括:加载所述映射规则库中的XML文件,从所述XML文件中读取数据以获得用于生成所述SQL语句的映射规则。根据本发明实施方式,映射规则采用XML格式保存,增强了持久层的可移植性。
此外,本发明实施方式还提供了一种白名单生成方法,所述方法可以包括:在映射规则库中存放了对象与白名单表之间的对应关系;当业务逻辑的白名单对象需要持久时,发消息给持久层;所述持久层依据上述各种不同实施方式所述的数据持久层进行数据存取的方法进行操作,以读取生成白名单所需的数据;所述业务逻辑根据所述读取的数据生成白名单表。
由此,根据本发明实施方式的白名单生成方法,能够快速实时地创建白名单表。
作为选择,在本发明的其他实施方式,如图6所示,白名单快速生成的处理逻辑包括但不限于:
(1)第一步是视图层,主要的工作就是对数据字典进行数据的初始化,然后加载白名单的设计视图和元数据等等。
(2)第二步是控制层,也是核心层,在第一步中初始化了数据字典,在数据字典中存放了对象与白名单表之间的对应关系,当业务逻辑的对象需要持久时,发出一个消息给持久层,然后从映射规则中读取相应的数据,生成该白名单表的SQL代码或语句,从而实现了对象的读取,由于业务逻辑层与持久层相互传递的是对象,而持久层与数据库直接传递的是记录,因此类似于逻辑类存取对象时就像在数据库中存取一样。这样的好处是开发者并不需要了解关系数据库模式。所谓持久(persistence),就是把数据保存到可掉电式存储设备中。
(3)最后是数据层,通过对生成出来的白名单表进行范式的核查以及数据的控制,同时记录下相应的日志数据用于日后查询。
根据本发明的各种实施方式,可以具有如下优点:
(1)对象持久化技术的实际应用,实现了对象在关系数据库中的存取,由于这种技术实现了对象的完全封装,采用映射规则库的概念,这样能够大大的消除对象模型与数据库之间的不同步问题,如果数据库模式改变了,不需要重新对应用程序进行编译,仅仅只需要更改一下映射规则,达到对象模型与关系数据库的无关性。
(2)通过采用对象缓冲区等技术,对象的存取效率得到大大的提升,这对快速生成白名单提供了很好的帮助。
(3)映射字典采用的XML格式保存,增强了持久层的可移植性。
以上具体描述了本发明的各种不同的实施方式,下面以另一种形式描述本发明实施方式的技术方案的其他方面或特征,并且不限于下述一系列段落,为了清楚和有效起见,可给这些段落中的一些或所有段落指定字母数字。这些段落中的每一段可以以任何合适的方式与一个或多于一个其他段落的内容组合。在不限定合适的组合中的一些的实例的条件下,下文中的一些段落特别引用其他段落并且进一步限定其他段落。
P1.根据本发明各种不同实施方式所述的一种用于数据持久层进行数据存取的装置可以包括,但不限于:映射规则库,存储有映射规则;SQL生成模块,用于从所述映射规则库抽取映射规则并根据所述抽取的映射规则生成SQL语句;持久对象存取模块,用于根据所述SQL语句对关系数据库进行对象数据的存取操作。
P2.根据段落P1所述的装置还可包括:映射生成模块,用于将对象到所述关系数据库的映射机制写入到所述映射规则库中。
P3.根据段落P1或P2所述的装置,所述映射规则库可以XML文件的形式存储所述映射规则。
P4.根据段落P3所述的装置还可以包括:XML读取模块,用于加载所述映射规则库中的XML文件并且从所述XML文件中读取数据,将数据发送给所述SQL生成模块。
P5.根据本发明各种不同实施方式所述的一种数据持久层进行数据存取的方法可以包括,但不限于:从映射规则库抽取映射规则;根据所述映射规则生成SQL语句;根据所述SQL语句对关系数据库进行数据存取操作。
P6.根据段落P5所述的方法可以还包括:预先将对象到所述关系数据库的映射机制写入到所述映射规则库中。
P7.根据段落P5或P6所述的方法,所述映射规则库以XML文件的形式存储所述映射规则。
P8.根据段落P7所述的方法可以还包括:加载所述映射规则库中的XML文件,从所述XML文件中读取数据以获得用于生成所述SQL语句的映射规则。
P9.根据本发明各种不同实施方式所述的一种白名单生成方法可以包括,但不限于:在映射规则库中存放了对象与白名单表之间的对应关系;当业务逻辑的白名单对象需要持久时,发消息给持久层;所述持久层依据段落P5至P8中任意一段所述的方法进行操作,以读取生成白名单所需的数据;所述业务逻辑根据所述读取的数据生成白名单表。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可借助软件结合硬件平台的方式来实现。基于这样的理解,本发明的技术方案对背景技术做出贡献的全部或者部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
本领技术人员应当理解,以上所公开的仅为本发明的实施方式而已,当然不能以此来限定本发明之权利范围,依本发明实施方式所作的等同变化,仍属本发明权利要求所涵盖的范围。
Claims (9)
1.一种用于数据持久层进行数据存取的装置,其特征在于,所述装置包括:
映射规则库,存储有映射规则;
SQL生成模块,用于从所述映射规则库抽取映射规则并根据所述抽取的映射规则生成SQL语句;
持久对象存取模块,用于根据所述SQL语句对关系数据库进行对象数据的存取操作。
2.根据权利要求1所述的装置,其特征在于,所述装置还包括:
映射生成模块,用于将对象到所述关系数据库的映射机制写入到所述映射规则库中。
3.根据权利要求1或2所述的装置,其特征在于,所述映射规则库以XML文件的形式存储所述映射规则。
4.根据权利要求3所述的装置,其特征在于,所述装置还包括:
XML读取模块,用于加载所述映射规则库中的XML文件并且从所述XML文件中读取数据,将数据发送给所述SQL生成模块。
5.一种数据持久层进行数据存取的方法,其特征在于,所述方法包括:
从映射规则库抽取映射规则;
根据所述映射规则生成SQL语句;
根据所述SQL语句对关系数据库进行数据存取操作。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
预先将对象到所述关系数据库的映射机制写入到所述映射规则库中。
7.根据权利要求5或6所述的方法,其特征在于,所述映射规则库以XML文件的形式存储所述映射规则。
8.根据权利要求7所述的方法,其特征在于,所述方法还包括:
加载所述映射规则库中的XML文件,从所述XML文件中读取数据以获得用于生成所述SQL语句的映射规则。
9.一种白名单生成方法,其特征在于,所述方法包括:
在映射规则库中存放了对象与白名单表之间的对应关系;
当业务逻辑的白名单对象需要持久时,发消息给持久层;
所述持久层依据权利要求5至8中任意一项所述的方法进行操作,以读取生成白名单所需的数据;
所述业务逻辑根据所述读取的数据生成白名单表。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610207752.4A CN105893587A (zh) | 2016-04-06 | 2016-04-06 | 白名单生成方法和相关的用于数据存取的装置及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610207752.4A CN105893587A (zh) | 2016-04-06 | 2016-04-06 | 白名单生成方法和相关的用于数据存取的装置及方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105893587A true CN105893587A (zh) | 2016-08-24 |
Family
ID=57012155
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610207752.4A Pending CN105893587A (zh) | 2016-04-06 | 2016-04-06 | 白名单生成方法和相关的用于数据存取的装置及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105893587A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106372176A (zh) * | 2016-08-30 | 2017-02-01 | 东华大学 | 一种支持对嵌套文档进行统一sql查询的方法 |
CN116468458A (zh) * | 2023-03-15 | 2023-07-21 | 深圳优钱信息技术有限公司 | 基于人工智能和神经网络的精准营销白名单提取方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101021877A (zh) * | 2007-03-16 | 2007-08-22 | 华为技术有限公司 | 将对象局部属性更新到关系数据库的方法及装置 |
CN101030271A (zh) * | 2006-03-03 | 2007-09-05 | 中国电信股份有限公司 | 一种资源业务对象的持久化和查询方法 |
US20110202997A1 (en) * | 2008-12-31 | 2011-08-18 | Jaideep Chandrashekar | Method and system for detecting and reducing botnet activity |
CN103049251A (zh) * | 2011-10-17 | 2013-04-17 | ***通信集团公司 | 一种数据库持久层装置及数据库操作方法 |
-
2016
- 2016-04-06 CN CN201610207752.4A patent/CN105893587A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101030271A (zh) * | 2006-03-03 | 2007-09-05 | 中国电信股份有限公司 | 一种资源业务对象的持久化和查询方法 |
CN101021877A (zh) * | 2007-03-16 | 2007-08-22 | 华为技术有限公司 | 将对象局部属性更新到关系数据库的方法及装置 |
US20110202997A1 (en) * | 2008-12-31 | 2011-08-18 | Jaideep Chandrashekar | Method and system for detecting and reducing botnet activity |
CN103049251A (zh) * | 2011-10-17 | 2013-04-17 | ***通信集团公司 | 一种数据库持久层装置及数据库操作方法 |
Non-Patent Citations (1)
Title |
---|
吕德文: "映射对象到关系数据库的快速持久层的研究与设计", 《中国优秀博硕士论文全文数据库(硕士) 信息科技辑》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106372176A (zh) * | 2016-08-30 | 2017-02-01 | 东华大学 | 一种支持对嵌套文档进行统一sql查询的方法 |
CN116468458A (zh) * | 2023-03-15 | 2023-07-21 | 深圳优钱信息技术有限公司 | 基于人工智能和神经网络的精准营销白名单提取方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102521416B (zh) | 数据关联查询方法和数据关联查询装置 | |
US7096231B2 (en) | Export engine which builds relational database directly from object model | |
CN107038207A (zh) | 一种数据查询方法、数据处理方法及装置 | |
CN107463635A (zh) | 一种图片数据查询的方法和分布式NewSQL数据库*** | |
CN107122443A (zh) | 一种基于Spark SQL的分布式全文检索***及方法 | |
CN100501731C (zh) | 延迟取出用户定义类型的指定成员的***和方法 | |
CN106611046A (zh) | 基于大数据技术的空间数据存储处理中间件框架 | |
CN106708993A (zh) | 基于大数据技术的空间数据存储处理中间件框架实现方法 | |
CN101546259B (zh) | 支持运行时模型扩展的对象关系映射***和方法 | |
CN101901265B (zh) | 一种虚拟试验数据对象化管理*** | |
CN101641695A (zh) | 资源接入过滤***及供与资源接入过滤***一起使用的数据库结构 | |
CN103399945A (zh) | 一种基于云计算数据库***的数据结构 | |
CN106407302A (zh) | 支持通过简单sql调用中间件数据库特有功能的方法 | |
CN103646051A (zh) | 一种基于列存储的大数据并行处理***及方法 | |
CN104462421A (zh) | 基于键-值数据库的多租户扩展方法 | |
CN112930529A (zh) | 从概念数据模型生成软件工件 | |
CN108536745A (zh) | 基于Shell的数据表提取方法、终端、设备及存储介质 | |
CN104574275B (zh) | 一种在模型绘制过程中合并贴图的方法 | |
CN110134681A (zh) | 数据存储与查询方法、装置、计算机设备及存储介质 | |
CN105335482B (zh) | 面向海量分布式数据库的批量***方法 | |
CN110413711A (zh) | 一种差异数据获取方法及其存储介质 | |
CN105893587A (zh) | 白名单生成方法和相关的用于数据存取的装置及方法 | |
KR102087280B1 (ko) | 편집 명령을 포함하는 메시지에 기초하여 전자 문서를 편집하는 서버 및 그 동작 방법 | |
CN104391947A (zh) | 海量gis数据实时处理方法及*** | |
CN101719162A (zh) | 基于片段模式匹配的多版本开放式地理信息服务访问方法及*** |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20160824 |
|
WD01 | Invention patent application deemed withdrawn after publication |