CN112287177B - 一种创建、变更、显示和查询对象标签的方法和装置 - Google Patents
一种创建、变更、显示和查询对象标签的方法和装置 Download PDFInfo
- Publication number
- CN112287177B CN112287177B CN202011339611.0A CN202011339611A CN112287177B CN 112287177 B CN112287177 B CN 112287177B CN 202011339611 A CN202011339611 A CN 202011339611A CN 112287177 B CN112287177 B CN 112287177B
- Authority
- CN
- China
- Prior art keywords
- tag
- information
- tags
- label
- byte array
- 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.)
- Active
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/80—Information retrieval; Database structures therefor; File system structures therefor of semi-structured data, e.g. markup language structured data such as SGML, XML or HTML
- G06F16/81—Indexing, e.g. XML tags; 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/80—Information retrieval; Database structures therefor; File system structures therefor of semi-structured data, e.g. markup language structured data such as SGML, XML or HTML
- G06F16/83—Querying
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/80—Information retrieval; Database structures therefor; File system structures therefor of semi-structured data, e.g. markup language structured data such as SGML, XML or HTML
- G06F16/83—Querying
- G06F16/838—Presentation of query results
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/80—Information retrieval; Database structures therefor; File system structures therefor of semi-structured data, e.g. markup language structured data such as SGML, XML or HTML
- G06F16/84—Mapping; Conversion
- G06F16/86—Mapping to a database
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/957—Browsing optimisation, e.g. caching or content distillation
- G06F16/9577—Optimising the visualization of content, e.g. distillation of HTML documents
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)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种创建、变更、显示以及查询对象标签的方法和装置,对标签表增加标签顺序,对对象表增加长整型字段,通过改变对象标签的存储以及查询方法,提高对象标签的存储、查询、变更速率,简化数据存储、查询逻辑,大幅度地提高大体量对象所属标签的查询速率和准确率。
Description
技术领域
本发明涉及计算机领域,特别涉及一种创建、变更、显示和查询对象标签的方法和装置。
背景技术
超文本标记语言(简称:HTML)标记标签通常被称为HTML标签,其是HTML 语言中最基本的单位,HTML标签是HTML(标准通用标记语言下的一个应用)最重要的组成部分,可通过对对象打标签实现特定功能。
现有技术对对象打标签主要有两种实现方式:
1、通过创建标签表维护标签信息,通过创建对象表维护对象及对象所属的标签信息字段。然而采用这种方式时,一旦需要变更某个对象的标签属性,需要从对象表中的标签信息字段中找到需要修改的标签单独对其进行并更,或者替换整个标签信息字段,需要耗费较长的时间且整个过程较为繁琐。再者,若需要查询对象多属的多个标签时需要使用sqllike语句并用or等字符串连接起来,而or和like字符串对应的性能都很低,且like查询结果集中包括包含关系,无法准确查询含有互相包含字符的标签名称。
2、在第一种方式的基础上增加对象关系表,用以维护对象及标签之间的关系信息。这样存在的方式就是无法适用于大数据量的对象标签,因为数据内容会随着对象标签增加呈现几何式增长,占用较大的物理空间。另外,当需要对某个对象的标签属性进行变更时,需要对关联的标签表、对象表和关系表同时进行更改;当需要查询对象的某个标签时也需要关联多表进行同时查询,查询性能低且查询结果需要进行单独转译。
发明内容
本发明的目的在于提供一种创建、变更、显示以及查询对象标签的方法和装置,通过改变对象标签的存储以及查询方法,提高对象标签的存储、查询、变更速率,简化数据存储、查询逻辑,大幅度地提高大体量对象所属标签的查询速率和准确率。
为实现以上目的,本技术方案的第一方面,提供一种创建对象标签的方法,包括以下步骤:创建标签表,其中所述标签表包括标签、所述标签的标签信息以及所述标签的标签顺序;创建对象表,其中所述对象表记录对象、所述对象所属标签信息字段以及长整型字段,其中所述长整型字段用于记录所述对象对应的标签的编码值,长整型字段和标签顺序一一对应。
第二方面,提供一种变更对象标签的方法:包括以下步骤:创建标签表,其中所述标签表包括标签、所述标签的标签信息以及所述标签的标签顺序;创建对象表,其中所述对象表记录对象、所述对象所属标签信息字段以及长整型字段,其中所述长整型字段用于记录所述对象对应的标签的编码值,长整型字段和标签顺序一一对应,页面客户端记录对应变更标签的变更信息以及初始化初始字节数组,其中所述初始字节数组中的数值位置和所述标签表的所述标签顺序一一对应,依据所述变更标签的标签顺序更新所述初始字节数组得到更新字节数组,并将所述更新字节数组转换为字符串;所述页面客户端向服务器发出包含所述字符串的对象标签变更信息注册请求,所述服务器解析所述对象标签变更信息注册请求并提交至数据库;所述数据库将所述字符串转换为变更长整型,所述变更长整型与原始长整型字段值进行运算,并更新到对应对象的对象表的长整型字段中。
第三方面,提供一种显示对象标签的方法:创建标签表,其中所述标签表包括标签、所述标签的标签信息以及所述标签的标签顺序;创建对象表,其中所述对象表记录对象、所述对象所属标签信息字段以及长整型字段,其中所述长整型字段用于记录所述对象对应的标签的编码值,长整型字段和标签顺序一一对应,页面客户端依据显示请求信息获取对应的显示响应信息,所述显示响应信息包括所述标签表中的所述标签顺序以及所述标签信息,将所述显示响应信息写入标准标签数组中;所述页面客户端依据标签信息请求信息获取对应的标签响应信息,其中所述标签响应信息包括所述对象表中的所述长整型字段,转换所述长整型字段为字符串,将所述字符串转换为显示字节数组;所述页面客户端依据所述显示字节数组的数值从所述标准标签数组对应的位置读取标签信息。
第四方面,提供一种查询对象标签的方法,包括以下步骤:创建标签表,其中所述标签表包括标签、所述标签的标签信息以及所述标签的标签顺序;创建对象表,其中所述对象表记录对象、所述对象所属标签信息字段以及长整型字段,其中所述长整型字段用于记录所述对象对应的标签的编码值,长整型字段和标签顺序一一对应,页面客户端获取查询标签请求信息以及初始化初始字节数组,其中所述初始字节数组的数值位置和所述对象表中的标签顺序对应,依据所述查询标签请求信息更新所述初始字节数组得到查询字节数组,并将所述更新字节数组转换为字符串;所述页面客户端向服务器发出包含所述字符串的对象标签查询信息注册请求;所述服务器解析所述对象标签查询信息注册请求并提交至数据库;所述数据库依据所述字符串作为查询条件,查询标签是否存在,若存在则显示标签。
第五方面,提供一种创建、变更、显示和查询对象标签的装置,该装置运行其上提到的创建对象标签的方法、变更对象标签的方法、显示对象标签的方法、查询对象标签的方法的一种或多种。
相较现有技术,本技术方案具有以下特点和有益效果:
1.通过简单的编码、解码实现快速打标签这种具有复杂关联存储的操作,简化了数据存储步骤,使用长整型存储标签信息,大大降低了数据存储成本。具体的,可对创建的标签表增加对应标签的标签顺序,对对象表增加用于记录所述对象对应的标签的编码长整型字段,其中所述长整型字段用于记录所述对象对应的标签的编码值,长整型字段和标签顺序一一对应。
2.使用逻辑运算简单快捷地实现对象标签的变更,提高了对象标签变更的效率,这种方式的优势在大体量的对象标签处理时体现地尤为明显。具体的,设置数值位置和标签的标签顺序对应的初始字节数组,根据变更标签的标签顺序更新得到更新字节数组,转换更新字节数组为字符串,用字符串转换为变更长整型以更新对象表的长整型字段,以此方式实现快速额对象标签的查询。
3.使用逻辑运算简单快捷地实现对象标签的显示,提高了对象标签显示的效率,这种方式的优势在大体量的对象标签处理时体现地尤为明显。将标签表中的信息写入标准标签数组中,依据标签信息请求信息获取对象表中长整型字段,并转换为显示字节数组,依据显示字节数组的数值从标准标签数组中获取对应的标签信息。
4.使用逻辑运算简单快捷地实现对象标签的查询,提高了对象标签查询的效率,这种方式的优势在大体量的对象标签处理时体现地尤为明显。具体的,设置数值位置和标签的标签顺序对应的初始字节数组,根据查询标签的标签顺序更新得到查询字节数组,转换查询字节数组为字符串,依据字符串查询对象表中的长整型字段,进而查询是否存在显示标签。
附图说明
图1是根据本发明的一实施例的变更对象标签的方法的示意图。
图2是根据本发明的一实施例的显示对象标签的方法的示意图。
图3是根据本发明的一实施例的查询对象标签的方法的示意图。
图4是根据本发明的运行服务框架的示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本发明保护的范围。
本方案提供一种存储、变更、显示以及查询对象标签的方法和装置,该方法在服务框架中运行,而服务框架可以通过远程过程调用协议(Remote Procedure Call Protocol,RPC)实现或者超文本传送协议(HyperText Transfer Protocol,HTTP)实现。其中RPC是一种通过网络从远程计算机程序上请求服务、能够实现跨平台跨语言的数据传输而不需要了解底层网络技术的协议;HTTP协议是用于从WWW服务器传输超文本到本地浏览器的传送协议,在一些实施例中,基于HTTP协议,可以使用POST法向指定资源提交数据进行处理请求,例如,提交表单,或者使用GET法向特定的资源发出请求,例如向服务器发送获取数据的请求等。基于HTTP协议的服务框架可以使浏览器更加高效。
对象标签信息的存储位置可以根据实际情况进行设置,例如,将对象所属的标签信息存储在应用系统对应的目标数据库上,依据对象ID从目标数据库获取标签信息;当然,配置信息也可以存储在应用系统内部或者其他具有存储功能的元件上。其中目标数据库可以为关系型数据库,例如结构化查询语言 (Structured Query Language,MYSQL),或者为非关系型数据库。配置信息可以进一步包括:唯一性地指向接口关联的数据资源对应的目标数据库的数据信息。例如,当目标数据库为关系型数据库时,配置信息可以进一步包括:目标数据库的网络域名或IP,以及库名。通过该数据信息,可以快速定位应用系统对应的目标数据库,从该目标数据库中执行可执行查询语句,获取查询结果。本发明对对象ID的生成方式和组成不做具体限定,只要其能够唯一性地指向应用系统对应的目标数据库即可。查询结果的数据格式可以根据实际需要进行设置。在一些实施例中,为了便于应用系统对查询结果进行解析,查询结果的数据格式为:JSON和/或XML。
对应的,该方案在如图4所示的服务框架中运行,所述服务框架包括页面客户端、服务器和数据库,用户可以使用页面客户端通过网络与服务器交互,以接收或发送消息等。页面客户端可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于平板电脑和台式计算机等等。服务器可以是提供各种服务的服务器,例如对用户利用页面客户端所浏览的网站提供支持的后台管理服务器。后台管理服务器可以对接收到的系统查询请求等数据进行分析等处理,并将处理结果反馈给页面客户端。
需要说明的是,本发明实施例所提供的一种创建、变更、显示以及查询对象标签的方法和装置一般由服务器执行,相应地,一种创建、变更、显示以及查询对象标签的方法和装置一般设置于服务器中,该装置的系统运行数据存储在数据库中。
应该理解,图4中的页面客户端、数据库和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
在开始介绍本方案之前,以下示例性的介绍标签、标签表以及对象表的内容:
标签:用尖括号包围起来的关键词,比如<audio>;
标签表:存储标签及对应标签的标签信息,标签信息包括标签名称以及标签描述信息,比如<audio>,对应的标签信息为声音内容;
对象表:存储对象及对象所属的标签信息字段,其中标签信息字段包括以分隔符分割的多个标签,比如xxx:<audio>,<dialog>。
根据本发明的第一方面,提供一种创建对象标签的方法,包括以下步骤:
创建标签表,其中所述标签表包括标签、所述标签的标签信息以及所述标签的标签顺序;
创建对象表,其中所述对象表包括对象、所述对象所属的标签信息字段以及长整型字段,其中所述长整型字段用以记录所述对象对应的标签的编码值,其中所述长整型字段和所述标签顺序一一对应。
其中所述标签顺序为整型的字段SEQNUM,用于记录每个标签的顺序,且所述标签顺序自0开始以1为维度递增,该标签顺序一旦增加后就不允许修改,且所述标签顺序不会重复,以保证每个标签顺序对应一个标签。
另外,由于传统方案中也会对标签创建标签表,不同的是,本方案在原有方案的基础上增加所述整型字段SEQNUM,以记录每个标签的顺序。
此时所述标签表维护多个标签,示例性的,某一标签显示为:标签<audio>,对应的标签信息为声音内容,SEQNUM:1。
其中所述对象所属信息字段包括以分隔符分割的多个标签,,通过所述长整型字段TAGS反应所述标签的相关信息。
示例性的,该对象表中对应某一对象展示:xxx:<audio>,TAGS 1; <dialog>TAGS2。
其中所述长整型字段TAGS为bigint类型,由于受到数据库存储类型bigint 长度为8个字节,每个字节8位,共64位的限制,因此最多支持64个标签,即,所述长整型字段TAGS的数值不大于64。
本方案提供的创建对象标签的方法通过简单的编码关联对象和标签,且使用长整型字段存储对象对应的标签的相关信息,大大降低了数据存储成本。
根据本发明的第二方面,提供一种变更对象标签的方法,该变更对象标签的方法基于其上所述方法创建的对象标签实施,即,标签对应的创建标签表记录标签、所述标签对应的标签信息以及标签顺序;对象对应的所述对象表记录对象、所述对象所属标签信息字段以及长整型字段。该变更对象标签的方法包括以下步骤:
步骤101:页面客户端记录对应变更标签的变更信息;
步骤102:所述页面客户端初始化初始字节数组,其中所述初始字节数组中的数值位置和标签的标签顺序一一对应,依据所述变更标签的标签顺序定位所述初始字节数组的位置并填充为1,得到更新字节数组,并将所述更新字节数组转换为字符串;
步骤103:所述页面客户端向服务器发出对象标签变更信息注册请求,所述对象标签变更信息注册请求包含所述字符串;
步骤104:所述服务器解析所述对象标签变更信息注册请求并提交至数据库;
步骤105:所述数据库将所述字符串转换为变更长整型,所述变更长整型与原始长整型字段值进行运算,并更新到对应对象的对象表的长整型字段中。
在步骤101中,所述变更信息包括新增、修改和删除指令的一种或多种。所述页面客户端监听用户发出的变更某一或多个标签的点击事件,需要发生变更的标签定义为所述变更标签,且对应的变更内容记录为所述变更信息。若用户需要变更多个标签时,则所述页面客户端记录对应多个所述变更标签的所述变更信息。
在步骤102中,所述初始字节数组对应所有标签设置一一对应的数值,且每个数值的位置和标签顺序一一对应。所述页面客户端初始化所述初始字节数组中的数值全部为0,根据所述变更标签对应的标签顺序更新对应数值位置的数值为1,得到所述更新字节数组。
其中所述初始字节数组为64位数组,且所述初始字节数组中的每个数值为 0或1,可根据JS语言初始化所述初始字节数组。
示例性的,初始字节数组var array=[0,0,0,0,0……];所述初始字节数组对应的标签顺序为:Rseqnum=[1/2/3/4/5……];若变更标签的标签顺序为 3,则得到的变更字节数组var array=[0,0,1,0,0……]。
在步骤102中,所述更新字节数组转换为字符串包括:对所述更新字节数组进行数组元素翻转转换为所述字符串。此处可利用JS的reverse()方法将数组元素进行翻转,再通过JS的join()方法将64位字节数组转换为字符串。
示例性的:变更字节数组var array=[0,0,1,0,0……],字符串为:“0,0,1,0,0……”。
在步骤103中,所述对象标签变更信息注册请求,所述对象标签变更信息含有字符串,在104当中,Mysql数据库的conv(字符串,2,10)方法)将提交的字符串转换为长整型。。
在步骤105中,所述数据库将所述字符串转换为所述变更长整型包括:Mysql 数据库的conv(字符串,2,10)方法)将提交的字符串转换为长整型;示例字符串 1010通过conv(字符串,2,10)方法变为20。
所述变更长整型使用二进制的方式与原始长整型字段值进行运算,并更新到对应对象的对象表的长整型字段中。
所述变更长整型使用二进制的方式与原始长整型字段值进行运算包括:使用二进制异或的方式(提交值^原始值)将提交值与原始字段值(如果是新增,原始字段值为0)进行运算后,将结果更新到标签字段TAGS中。示例性的,变更标签位置信息最红存储为长整型20,二进制转换为1010,原始数据库存储值也为20,二进制转换后也为1010,通过二进制异或的方式(提交值^原始值)将两个异或运算生成1000,运算后为8,存入TAGS字段中。
根据本发明的第三方面,提供一种显示对象标签的方法,该显示对象标签的方法基于其上所述方法创建的对象标签实施,即,标签对应的创建标签表记录标签、所述标签对应的标签信息以及标签顺序;对象对应的所述对象表记录对象、所述对象所属标签信息字段以及长整型字段。
该显示对象标签的方法包括以下步骤:
步骤301:页面客户端依据显示请求信息获取对应的显示响应信息,所述显示响应信息包括标签表中的标签顺序以及标签信息,将所述显示响应信息写入标准标签数组中并做页面缓存;
步骤302:所述页面客户端依据标签信息请求信息获取对应的标签响应信息,其中所述标签响应信息包括对象表中的长整型字段,转换所述长整型字段为字符串,随后将所述字符串转换为数组,再将所述数组转换为显示字节数组;
步骤303:所述页面客户端依据所述显示字节数组的数值从所述标准标签数组中读取标签信息,并展示。
在步骤301中,所述页面客户端向服务器发出所述显示请求信息,所述服务器依据所述显示请求信息从数据库的标签表中调取所述显示响应信息,并反馈给所述页面客户端,所述页面客户端获取所述显示响应信息。
其中所述显示请求信息包括标签顺序请求信息以及标签信息请求信息,所述显示请求信息请求标签表中所有的标签顺序及对应的标签信息;对应的,所述显示响应信息包括所述标签的标签顺序以及所述标签信息,所述标签信息包括标签名称以及标签描述信息,所述标签表中的内容被设定。
所述页面客户端依据所述显示响应信息生成所述标准标签数组包括:依据所述标签顺序依次写入所述标签信息,则所述标准标签数组中的每个数值对应一个标签,所述标准标签数组中的数值位置对应标签顺序设置。
在步骤302中,所述页面客户端向所述服务器发出所述标签信息请求信息,所述服务器依据所述标签信息请求信息从所述数据库中的所述对象表中调取所述标签响应信息,并反馈给所述页面客户端,所述页面客户端获取所述标签响应信息。
其中所述标签信息请求信息包括对象请求信息以及长整型字段请求信息,即,所述标签信息请求信息请求所述对象表中的所述长整型字段,所述标签响应信息包括所述长整型字段,所述长整型字段以数值的形式展示。
在步骤302中,所述页面客户端依据JS的toString()方法将所述标签响应信息中的所述长整型字段转换为所述字符串,所述字符串为二进制字符串,示例性的,所述长整型字段值为238,对应的字符串示例“1,0,0,0,0……。
所述页面客户端依据JS的Spilt()函数将所述字符串分成数组,示例性的,数组示例var array=[1,0,0,0,0……]。
所述页面客户端依据reverse()方法,将所述数组进行反转获得所述显示字节数组,所述显示字节数组包括标签顺序信息及对应的数值,数值内容为0或1。
示例性的:所述显示字节数组为:var array=[……0,0,0,0,1];Rseqnum=[……5/4/3/2/1]。
在步骤303中,所述页面客户端通过map循环方法对所述显示字节数组进行循环,当所述显示字节数组中的数值为1,读取所述数值对应的数值位置,根据获取的所述数值位置从所述标准标签数组的相同位置读取所述标签信息,此内容为已经对对象打过标记的标签。
示例性的:
Map(value,index)
If value=1
T{1}。
根据本发明的第四方面,提供一种查询对象标签的方法,该查询对象标签的方法基于其上所述方法创建的对象标签实施,即,标签对应的创建标签表记录标签、所述标签对应的标签信息以及标签顺序;对象对应的所述对象表记录对象、所述对象所属标签信息字段以及长整型字段。该查询对象标签的方法包括以下步骤:
步骤401:页面客户端获取查询标签请求信息;
步骤402:所述页面客户端初始化初始字节数组,其中所述初始字节数组的数值位置和标签顺序一一对应,依据所述查询标签请求信息定位所述字节数组的所述数值位置并填充为1,得到查询字节数组,并将所述更新字节数组转换为字符串;
步骤403:所述页面客户端向服务器发出对象标签查询信息注册请求,所述对象标签查询信息注册请求包含所述字符串;
步骤404:所述服务器解析所述对象标签查询信息注册请求并提交至数据库;
步骤405:所述数据库依据所述字符串作为查询条件,查询标签是否存在,若存在则显示标签。
具体的,在步骤401中,所述页面客户端监听用户发出的查询某一或多个标签的点击事件,需要发生查询的标签定义为查询标签,若用户需要查询多个标签时,则所述页面客户端记录对应多个所述查询标签的所述查询标签请求信息。
在步骤402中,所述初始字节数组对应所有标签设置一一对应的数值位置,即每个标签对应所述初始字节数组中的数值位置。所述页面客户端初始化所述初始字节数值使得:所述初始字节数组的数值为0,根据所述查询标签对应的标签顺序更新对应的所述数值位置的数值为1,得到所述更新字节数组。
其中所述初始字节数组为64位数组,且所述初始字节数组中的每个数值为 0或1,可根据JS语言初始化所述初始字节数组。
示例性的,初始化字节数组var array=[0,0,0,0,0……];所述字节数组对应的标签顺序为:Rseqnum=[1/2/3/4/5……];若查询标签的标签数值为3, 则得到的变更字节数组var array=[0,0,1,0,0……]。
在步骤402中,所述更新字节数组转换为字符串包括:对所述更新字节数组进行数组元素使用JS的reverse()方法翻转,再使用JS的join()方法将64 位字节数组转换为所述字符串。且由于标签不一定够64个,为了节省存储空间,从低位开始存储。
示例性的:变更字节数组var array=[0,0,1,0,0……],字符串为:“0,0,1,0,0……”。
在步骤403中,所述对象标签变更信息注册请求,所述对象标签变更信息除了含有所述字符串,在404当中,Mysql数据库的conv(字符串,2,10)方法) 将提交的字符串转换为长整型。
在步骤405中,在查询语句的WHERE条件中,使用TAGS原始值二进制与(&) 查询条件TAG2,若结果值大于0,则已打的标签中包含至少一个已选的查询条件标签;结果值等于查询条件TAG2的值,则已打的标签中包含全部查询条件选择的标签。
示例性的:查询条件示例:select*from对象表where TAGS&TAG2。
根据本发明的第五方面,提供一种创建、变更、显示以及查询对象标签的装置,该装置运行其上提到的创建对象标签的方法、变更对象标签的方法、显示对象标签的方法、查询对象标签的方法的一种或多种。
用于实现本方案实施例的创建、变更、显示以及查询对象标签的方法的服务器的计算机系统包括中央处理单元CPU),其可以根据存储在只读存储器(ROM) 中的程序或者从存储部分加载到随机访问存储器(RAM)中的程序而执行各种适当的动作和处理。在RAM中,还存储有系统操作所需的各种程序和数据。CPU、 ROM以及RAM通过总线彼此相连。输入/输出(I/O)接口也连接至总线。
以下部件连接至I/O接口:包括键盘、鼠标等的输入部分;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分;包括硬盘等的存储部分;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分。通信部分经由诸如因特网的网络执行通信处理。驱动器也根据需要连接至I/O接口。可拆卸介质,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器上,以便于从其上读出的计算机程序根据需要被安装入存储部分。
特别地,根据本发明公开的实施例,上文参考流程图描述的创建、变更、显示以及查询对象标签对应的过程可以被实现为计算机软件程序。例如,本发明公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的创建、变更、显示以及查询对象标签的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分从网络上被下载和安装,和/或从可拆卸介质被安装。在该计算机程序被中央处理单元(CPU)执行时,执行本发明的系统中限定的上述功能。
作为另一方面,本发明还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的创建、变更、显示以及查询对象标签的装置中所包含的;也可以是单独存在,而未装配入该设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该设备执行时,使得该设备执行以下创建、变更、显示以及查询对象标签的方法所对应过的流程步骤。
上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,取决于设计要求和其他因素,可以发生各种各样的修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。
Claims (17)
1.一种创建对象标签的方法,其特征在于,包括以下步骤:
创建标签表,其中所述标签表包括标签、所述标签的标签信息以及所述标签的标签顺序,所述标签信息包括标签名称以及标签描述信息;
创建对象表,其中所述对象表包括对象、所述对象所属的标签信息字段以及长整型字段,其中所述长整型字段用于记录所述对象对应的标签的编码值,长整型字段和标签顺序一一对应。
2.根据权利要求1所述的创建对象标签的方法,其特征在于,所述标签顺序为整型字段且从0开始以1为维度递增。
3.一种变更对象标签的方法,其特征在于,包括以下步骤:
创建标签表,其中所述标签表包括标签、所述标签的标签信息以及所述标签的标签顺序,所述标签信息包括标签名称以及标签描述信息;
创建对象表,其中所述对象表包括对象、所述对象所属的标签信息字段以及长整型字段,其中所述长整型字段用于记录所述对象对应的标签的编码值,长整型字段和标签顺序一一对应;
页面客户端记录对应变更标签的变更信息以及初始化初始字节数组,其中所述初始字节数组中的数值位置和所述标签表的所述标签顺序一一对应,依据所述变更标签的标签顺序更新所述初始字节数组得到更新字节数组,并将所述更新字节数组转换为字符串;
所述页面客户端向服务器发出包含所述字符串的对象标签变更信息注册请求,所述服务器解析所述对象标签变更信息注册请求并提交至数据库;
所述数据库将所述字符串转换为变更长整型,所述变更长整型与原始长整型字段值进行运算,并更新到对应对象的对象表的长整型字段中。
4.根据权利要求3所述的变更对象标签的方法,其特征在于,所述页面客户端初始化所述初始字节数组中的数值全部为0,根据所述变更信息更新对应的所述数值位置的数值为1,得到所述更新字节数组。
5.根据权利要求3所述的变更对象标签的方法,其特征在于,所述变更长整型使用二进制的方式与原始长整型字段值进行运算,并更新到对应对象的对象表的长整型字段中。
6.一种显示对象标签的方法,其特征在于,包括以下步骤:
创建标签表,其中所述标签表包括标签、所述标签的标签信息以及所述标签的标签顺序,所述标签信息包括标签名称以及标签描述信息;
创建对象表,其中所述对象表包括对象、所述对象所属的标签信息字段以及长整型字段,其中所述长整型字段用于记录所述对象对应的标签的编码值,长整型字段和标签顺序一一对应;
页面客户端依据显示请求信息获取对应的显示响应信息,所述显示响应信息包括所述标签表中的所述标签顺序以及所述标签信息,将所述显示响应信息写入标准标签数组中;
所述页面客户端依据标签信息请求信息获取对应的标签响应信息,其中所述标签响应信息包括所述对象表中的所述长整型字段,转换所述长整型字段为字符串,将所述字符串转换为显示字节数组;
所述页面客户端依据所述显示字节数组的数值从所述标准标签数组对应的位置读取标签信息。
7.根据权利要求6所述的显示对象标签的方法,其特征在于,所述页面客户端依据所述显示响应信息生成所述标准标签数组包括:依据所述标签顺序依次写入所述标签信息。
8.根据权利要求6所述的显示对象标签的方法,其特征在于,所述页面客户端将所述字符串转换为数组,再将所述数组转换为所述显示字节数组。
9.根据权利要求8所述的显示对象标签的方法,其特征在于,所述页面客户端依据JS的toString()方法将所述长整型字段转换为所述字符串,依据JS的Spilt()函数将所述字符串分成所述数组,依据reverse()方法将所述数组进行反转获得所述显示字节数组。
10.根据权利要求8所述的显示对象标签的方法,其特征在于,所述页面客户端通过map循环方法对所述显示字节数组进行循环,当所述显示字节数组中的数值为1,读取所述数值对应的数值位置,根据获取的所述数值位置从所述标准标签数组的相同位置读取所述标签信息。
11.一种查询对象标签的方法,其特征在于,包括以下步骤:
创建标签表,其中所述标签表包括标签、所述标签的标签信息以及所述标签的标签顺序,所述标签信息包括标签名称以及标签描述信息;
创建对象表,其中所述对象表包括对象、所述对象所属的标签信息字段以及长整型字段,其中所述长整型字段用于记录所述对象对应的标签的编码值,长整型字段和标签顺序一一对应;
页面客户端获取查询标签请求信息以及初始化初始字节数组,其中所述初始字节数组的数值位置和所述对象表中的标签顺序对应,依据所述查询标签请求信息更新所述初始字节数组得到查询字节数组,并将所述更新字节数组转换为字符串;
所述页面客户端向服务器发出包含所述字符串的对象标签查询信息注册请求;所述服务器解析所述对象标签查询信息注册请求并提交至数据库;
所述数据库依据所述字符串作为查询条件,查询标签是否存在,若存在则显示标签。
12.根据权利要求11所述的查询对象标签的方法,其特征在于,所述初始字节数组的数值为0,根据所述查询标签请求信息更新对应的所述数值位置的数值为1,得到所述更新字节数组。
13.根据权利要求11所述的查询对象标签的方法,其特征在于,所述更新字节数组转换为字符串包括:对所述更新字节数组进行数组元素使用JS的reverse()方法翻转,再使用JS的join()方法转换为所述字符串。
14.根据权利要求11所述的查询对象标签的方法,其特征在于,在查询语句的WHERE条件中,使用TAGS原始值二进制与(&)查询条件TAG2比较,查询所述标签是否存在。
15.一种创建、变更、显示以及查询对象标签的装置,其特征在于,运行权利要求3-5任一所述的变更对象标签的装置。
16.一种创建、变更、显示以及查询对象标签的装置,其特征在于,运行权利要求6-10所述的显示对象标签的装置。
17.一种创建、变更、显示以及查询对象标签的装置,其特征在于,运行权利要求11-14任一所述的变更对象标签的装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011339611.0A CN112287177B (zh) | 2020-11-25 | 2020-11-25 | 一种创建、变更、显示和查询对象标签的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011339611.0A CN112287177B (zh) | 2020-11-25 | 2020-11-25 | 一种创建、变更、显示和查询对象标签的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112287177A CN112287177A (zh) | 2021-01-29 |
CN112287177B true CN112287177B (zh) | 2021-07-13 |
Family
ID=74426446
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011339611.0A Active CN112287177B (zh) | 2020-11-25 | 2020-11-25 | 一种创建、变更、显示和查询对象标签的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112287177B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115577017B (zh) * | 2022-11-21 | 2023-02-28 | 四川蜀天信息技术有限公司 | 一种基于序列化和反序列化检索数据的方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108681547A (zh) * | 2018-03-27 | 2018-10-19 | 厦门欣旅通科技有限公司 | 一种基于小程序的网页内容转换方法及装置 |
CN111625161A (zh) * | 2020-04-21 | 2020-09-04 | 武汉旷视金智科技有限公司 | 标签的处理方法、装置及电子设备 |
CN111898904A (zh) * | 2020-07-28 | 2020-11-06 | 拉扎斯网络科技(上海)有限公司 | 一种数据处理方法及装置 |
CN111913566A (zh) * | 2019-05-10 | 2020-11-10 | 阿里巴巴集团控股有限公司 | 数据处理方法、装置、电子设备及计算机存储介质 |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100489862C (zh) * | 2007-06-22 | 2009-05-20 | 腾讯科技(深圳)有限公司 | 标记性语言文档的解析方法、解析模块和用户终端 |
CN101621862A (zh) * | 2009-08-11 | 2010-01-06 | 中兴通讯股份有限公司 | 手机浏览器快速定位有效信息的方法与装置 |
CN102135972A (zh) * | 2010-07-30 | 2011-07-27 | 华为软件技术有限公司 | 业务树数据处理方法、系统、客户端和服务器 |
CN103092917B (zh) * | 2012-12-20 | 2016-03-30 | 山东舜德数据管理软件工程有限公司 | 一种自定义标签实现浏览器页面业务字典的查询方法 |
CN104090947A (zh) * | 2014-07-03 | 2014-10-08 | 无锡市崇安区科技创业服务中心 | 一种存储和定位网页上选取内容的方法 |
US10235005B2 (en) * | 2015-03-27 | 2019-03-19 | Hitachi, Ltd. | Method of generating display name of objects to be managed |
CN104866404B (zh) * | 2015-05-19 | 2017-12-22 | 北京控制工程研究所 | 一种通用的数据监视方法 |
CN105138609B (zh) * | 2015-08-04 | 2019-07-30 | 广东瑞德智能科技股份有限公司 | 一种基于xml语言的家电设备描述方法 |
US10558721B2 (en) * | 2016-09-06 | 2020-02-11 | International Business Machines Corporation | Search tool enhancement using dynamic tagging |
WO2019046749A1 (en) * | 2017-08-31 | 2019-03-07 | Schneider Electric Software, Llc | MATCHING AND GENERATING AUTOMATIC LABELS FROM A DATA CHAIN |
CN107817977A (zh) * | 2017-09-28 | 2018-03-20 | 镇江景天信息科技有限公司 | 基于Web的在线课件制作编辑对象分屏布局的方法 |
CN109086064B (zh) * | 2018-08-01 | 2022-01-14 | 南京茂毓通软件科技有限公司 | 基于自定义标签语言的http协议要素通用抽取方法 |
CN109491727A (zh) * | 2018-10-16 | 2019-03-19 | 深圳壹账通智能科技有限公司 | 对象序列化方法、终端设备及计算机可读存储介质 |
CN110263222B (zh) * | 2019-06-25 | 2023-06-02 | 深圳市元征科技股份有限公司 | 一种数据获取方法、装置、设备及介质 |
CN110795660B (zh) * | 2019-09-26 | 2022-10-18 | 北京大米科技有限公司 | 数据分析方法、装置、电子设备及介质 |
CN111628975B (zh) * | 2020-05-12 | 2023-06-27 | 中国人民银行清算总中心 | 一种组装xml报文的方法及装置 |
CN111930708B (zh) * | 2020-07-14 | 2023-07-11 | 上海德拓信息技术股份有限公司 | 基于Ceph对象存储的对象标签的扩展系统及方法 |
-
2020
- 2020-11-25 CN CN202011339611.0A patent/CN112287177B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108681547A (zh) * | 2018-03-27 | 2018-10-19 | 厦门欣旅通科技有限公司 | 一种基于小程序的网页内容转换方法及装置 |
CN111913566A (zh) * | 2019-05-10 | 2020-11-10 | 阿里巴巴集团控股有限公司 | 数据处理方法、装置、电子设备及计算机存储介质 |
CN111625161A (zh) * | 2020-04-21 | 2020-09-04 | 武汉旷视金智科技有限公司 | 标签的处理方法、装置及电子设备 |
CN111898904A (zh) * | 2020-07-28 | 2020-11-06 | 拉扎斯网络科技(上海)有限公司 | 一种数据处理方法及装置 |
Non-Patent Citations (1)
Title |
---|
通过ID或NAME获取HTML标签对象及信息;mouse3150;《https://blog.csdn.net/mouse3150/article/details/7368999》;20120319;第1页 * |
Also Published As
Publication number | Publication date |
---|---|
CN112287177A (zh) | 2021-01-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110019350B (zh) | 基于配置信息的数据查询方法和装置 | |
US10474676B2 (en) | Database query language gateway | |
US7487176B2 (en) | Extending a directory schema independent of schema modification | |
US9940744B2 (en) | Remote font management | |
US20040268306A1 (en) | Methods, systems and computer program products for language independent data communication and display | |
KR20190039230A (ko) | 프레젠테이션을 위한 네이티브 콘텐츠의 서버측 렌더링 방법 및 시스템 | |
US20110184969A1 (en) | Techniques for fast and scalable xml generation and aggregation over binary xml | |
JP2014002757A (ja) | バイナリにエンコードされたxmlデータの効率的な区分的アップデート | |
US20060248058A1 (en) | Method, apparatus, and system for unifying heterogeneous data sources for access from online applications | |
CN111026931A (zh) | 一种数据查询方法、装置、设备及介质 | |
JP7275450B2 (ja) | ページリソースを取得する方法、装置、電子機器、及び読み取り可能な記憶媒体 | |
US20190034982A1 (en) | Templates and events for customizable notifications on websites | |
CN111708805A (zh) | 数据查询方法、装置、电子设备及存储介质 | |
JP2012160169A (ja) | 動的呼出サービスの実行結果のレンダリング方法、装置及びシステム | |
WO2011145044A1 (en) | Database translation system and method | |
WO2023056946A1 (zh) | 一种数据缓存方法、装置和电子设备 | |
CN112287177B (zh) | 一种创建、变更、显示和查询对象标签的方法和装置 | |
CN111881385A (zh) | 推送内容生成方法、装置、设备和可读存储介质 | |
US11361048B2 (en) | Conditional interpretation of a single style definition identifier on a resource | |
CN110308907B (zh) | 数据转换方法、装置、存储介质及电子设备 | |
US9129035B2 (en) | Systems, methods, and apparatus for accessing object representations of data sets | |
US20200364220A1 (en) | Object-based query language conversion and enrichment for database queries | |
CN113641706B (zh) | 数据查询的方法和装置 | |
CN110795494A (zh) | 缓存数据同步异步化的自动化测试方法和装置 | |
US7756906B2 (en) | Schema-aware mid-tier binary XML implementation |
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 |