CN112181391A - 一种可动态扩展数据的方法及系统 - Google Patents
一种可动态扩展数据的方法及系统 Download PDFInfo
- Publication number
- CN112181391A CN112181391A CN202011078339.5A CN202011078339A CN112181391A CN 112181391 A CN112181391 A CN 112181391A CN 202011078339 A CN202011078339 A CN 202011078339A CN 112181391 A CN112181391 A CN 112181391A
- Authority
- CN
- China
- Prior art keywords
- data
- client
- code
- dynamic
- server
- 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
- 238000000034 method Methods 0.000 title claims abstract description 65
- 238000012545 processing Methods 0.000 claims abstract description 68
- 230000008569 process Effects 0.000 claims abstract description 20
- 230000006870 function Effects 0.000 claims description 31
- 230000005540 biological transmission Effects 0.000 claims description 10
- 238000007405 data analysis Methods 0.000 claims description 6
- 238000012795 verification Methods 0.000 claims description 6
- 238000004590 computer program Methods 0.000 claims description 5
- 230000000977 initiatory effect Effects 0.000 claims description 5
- 230000007480 spreading Effects 0.000 claims description 3
- 238000004458 analytical method Methods 0.000 abstract description 5
- 238000003672 processing method Methods 0.000 description 16
- 239000002609 medium Substances 0.000 description 10
- 238000005516 engineering process Methods 0.000 description 6
- 230000008901 benefit Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 230000008859 change Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000007619 statistical method Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 238000013479 data entry Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 239000012120 mounting media Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/31—Programming languages or programming paradigms
- G06F8/315—Object-oriented languages
-
- 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
- G06F16/2282—Tablespace storage structures; Management thereof
-
- 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
- G06F16/252—Integrating or interfacing systems involving database management systems between a Database Management System and a front-end application
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/38—Creation or generation of source code for implementing user interfaces
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Human Computer Interaction (AREA)
- Computing Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种可动态扩展数据的方法及系统,包括:客户端异步请求获取服务器存储的数据类型以及所述动态扩展代码;客户端根据获取的所述数据类型标签,执行缓存的对应所述动态扩展代码,动态生成图形用户界面。本发明通过使用客户端对数据处理全过程的解析和服务器端存储配置相结合,实现系统的可动态扩展,解决了用户对系统功能动态扩展方面的需求问题;解决了各类数据属性不统一,难以整理汇总统计的问题;通过客户端缓存、预编译的方式,克服了大量数据处理时带来的执行速度问题,利用了客户端的计算能力,大大降低了服务器的处理压力,让服务器能够同时为更多客户端提供服务,并实现了数据在多个方面的动态扩展。
Description
技术领域
本发明涉及信息管理与信息系统、信息技术领域,具体而言,涉及一种可动态扩展数据的方法及系统。
背景技术
在当今社会环境下,随着各种统计数据类型的增多,各类数据类型的属性变化快且不统一,难以整理汇总,统计分析困难的问题越来越多。经常出现新购置实施的信息系统因统计需求变化快,一两年之内可能就无法满足基础数据的统计需求从而导致系统被弃用、需要更新或重新购置的尴尬局面。
Web技术发展到现在,开发软件系统的效率更高、成本更低、通用性好。随着HTML5标准的推出和无线通讯技术的发展,Web系统同时赢得了移动端和PC端,只需要一套HTML5的Web界面实现就可以同时在多种平台上提供服务,并且随时可以更新。未来软件系统的特点是互通互联、高并发、分布式、跨终端,这些特点都基于Web技术的发展实现了,未来会演变成所有软件的通用GUI解决方案。
所以考虑利用HTML5技术、Ajax异步通信和JavaScript编码实现在客户端对服务器发来的数据进行解析和处理,并动态生成页面中操作、浏览的界面部分,从而快速地实现系统的动态扩展,减轻服务器压力的同时又提高用户的使用体验。
发明内容
鉴于此,本发明的第一目的在于提出了一种可动态扩展数据的方法,快速地动态改变客户端的解析程序,让数据实现动态扩展。为此,通过对一般数据的属性结构进行梳理后,采用所有数据共用同一张冗余数据表,使各种数据类型从设计开始就能自然地实现属性之间的关联,避免使用多个数据表进行联结查询时的资源消耗,减少程序的算法复杂度,消除因关联错误导致的异常;数据的解析程序中可动态扩展的模块以键值对的字典方式存储在服务器的数据库,当用户登录后,后台自行把动态配置的代码模块全部异步缓存到客户端,并进行预编译处理,提高处理数据时的系统运行效率。针对现有数据的设计中动态扩展方面的不足,解决当今社会随着各种统计数据类型的增多,各类数据属性变化快且不统一,难以整理汇总,统计分析困难的问题。
本发明的第二目的在于提供一种可动态扩展数据的系统。
本发明一种可动态扩展数据的方法,包括以下步骤:
客户端异步请求获取服务器存储的数据类型以及所述动态扩展代码;
用户每次登陆成功后,客户端在页面加载时异步请求获取服务器存储的字典值和扩展代码,全部缓存在客户端本地,以供动态生成界面时检索和使用;
客户端根据获取的所述数据类型标签,执行缓存的对应所述动态扩展代码,动态生成图形用户界面;
用户通过地址链接发起访问请求,动态扩展所对应的处理模块主要是在客户端执行,优选地,使用JavaScript代码编写并实现的模块。
进一步地,所述数字类型以及扩展代码生成的过程还包括:
后台管理对数据库存储的数据类型做分类;
通过数据的每条记录的标签字段区分出所属数据类型,应用数据类型所对应的动态处理代码;优选地,以字典定义的数据类型标签区分所述数据类型,使用公用的数据类型字段进行区分,并且所述数据类型字段为所有数据共用并且必填,被用于扩展功能代码匹配时的标签使用,该字段的值限定为字典中定义的类型分类的数据集,该数据集由管理员通过修改字典项进行扩展;
后台管理依据不同的数据类型进行地址的配置;
通过设置地址为所述数据类型定义功能按钮,为不同的数据类型分别设置对应的数据浏览、数据录入的页面地址,通过该地址设置可以为不同类型定义各类功能按钮,可以控制用户对不同类型数据操作时的首页访问权限和数据的操作权限;地址的格式由公共访问地址加上所述数据类型标签值组成,数据类型的页面地址格式由公共访问地址加上数据类型标签值组成,通过标签值关联对应的数据类型,地址模块的配置还包括页面上的功能按钮设置,可以扩展该类型的可用操作,按钮的服务地址也是由公共地址和对应的数据类型标签值组成,所有相关的地址配置可以用以设置用户权限,通过对用户访问对应地址的限制达到用户权限设置的目的;
后台管理对数据的对应功能配置所述动态扩展代码;
数据的表单界面生成代码、列表界面生成代码、数据格式对象、图表格式对象、数据的动态处理方法对象都存储在数据库表中,管理员可以在后台通过管理界面进行增删改查的操作,以键值对的表方式存储,与字典一样使用二级表结构存储,通过灵活的代码配置可以任意扩展对数据的处理方法、界面结构、图表样式等动态处理方法对象,可以通过自定义的一级和二级的标签值,查找并动态地被所有功能模块调用,调用过程中会被客户端自动编译并缓存以提高运算速度;无需重新编译发布系统就可以实现动态扩展,极大的提高了系统的适应性。
进一步地,所述客户端异步请求获取服务器存储的数据类型以及所述动态扩展代码,是通过客户端定时向服务器端发起版本号请求,核对当前配置的版本号是否相同,当客户端版本号低于服务器的版本号值时,主动发起异步请求并刷新本地缓存的数据类型和扩展代码;
优选地,所述客户端异步请求获取服务器存储的数据类型以及所述动态扩展代码,优选地,所述数据类型为字典值,通过客户端定时向服务器端发起版本号请求,核对当前配置的版本号是否相同,当客户端版本号低于服务器的版本号值时,主动发起异步请求并刷新本地缓存的字典数据和扩展代码,以保证动态生成的页面即时更新;因为版本更替极少出现在用户登录使用过程中,可以人为的避开用户使用高峰期进行更新扩展代码,发起版本验证的时间间隔可以设置为不检查或者间隔较长时间。
进一步地,所述后台管理对数据库存储的数据类型做分类,是通过数据的每条记录的标签字段区分出所属数据类型,应用数据类型所对应的动态处理代码;
优选地,以字典定义的数据类型标签区分所述数据类型,使用公用的数据类型字段进行区分,并且所述数据类型字段为所有数据共用并且必填,被用于扩展功能代码匹配时的标签使用,该字段的值限定为字典中定义的类型分类的数据集,该数据集由管理员通过修改字典项进行扩展。
进一步地,所述地址的配置,所述地址的格式由公共访问地址加上所述数据类型标签值组成,数据类型的页面地址格式由公共访问地址加上数据类型标签值组成,通过标签值关联对应的数据类型,地址模块的配置还包括页面上的功能按钮设置,可以扩展该类型的可用操作,按钮的服务地址也是由公共地址和对应的数据类型标签值组成,所有相关的地址配置可以用以设置用户权限,通过对用户访问对应地址的限制达到用户权限设置的目的。
一种可动态扩展数据的系统,包括:
异步数据请求模块:用于客户端异步请求获取服务器存储的数据类型以及所述动态扩展代码;
数据解析处理模块:用于客户端根据获取的所述数据类型标签,执行缓存的对应动态扩展代码,动态生成图形用户界面。
进一步地,所述数字类型以及扩展代码生成的过程的模块,包括:
数据类型分类单元:用于对数据库存储的数据类型做分类;
数据地址配置单元:依据不同的数据类型进行地址的配置;
配置扩展代码单元:用于对数据的对应功能配置所述动态扩展代码。
进一步地,所述数据解析处理模块,预编译并缓存异步获取的服务器图形用户界面代码对象、数据的动态处理方法对象,包括格式化层、界面生成层、业务处理层、以及数据传输单元;
所述格式化层,用于对数据使用自定义格式进行数据格式化的处理;
用户请求返回的数据会被格式化层接收并处理,数据分为详情和列表两种方式返回,格式化层根据数据记录的标签属性检索并使用对应类型的格式化对象(格式化对象由业务处理层管理),对数据使用自定义格式进行数据格式化的处理;格式化对象定义了每种类型所使用的数据库字段、属性名称、格式化方法;优选地,属性值的格式化方法为JavaScript编码,格式化方法还可以调用业务处理层中其他方法辅助处理,还可以通过对已有数据计算并动态生成额外的数据列;
所述界面生成层,用于对用户输入的数据进行合法性验证、调用并展示业务处理层的代码执行结果、对生成的界面元素进行赋值;
界面生成层调用业务处理层缓存的各类界面生成代码,生成界面外观、产生页面逻辑、控制图表的生成格式、对用户输入的数据进行合法性验证、调用并展示业务处理层的代码执行结果、对生成的界面元素进行赋值,界面生成过程就是把业务规则、约束、活动和数据结合在一起的过程;格式化层传来的数据对象同时包含原始数据和格式化后的数据,通过业务处理层调用数据类型所对应的专用或通用动态代码,生成表单录入、详情、列表、图表分析界面,在界面生成过程中还可以调用业务处理层管理的方法进行更多的自定义功能扩展;
所述业务处理层,是各类自定义动态函数和对象的管理层,用于在客户端请求、接收、缓存、检索、预编译服务器端存储的动态代码,所述业务处理层管理的所有对象都是可以动态扩展的;
业务处理层是各类自定义动态函数和对象的管理层,负责在客户端请求、接收、缓存、检索、预编译服务器端存储的动态代码,被业务处理层管理的所有对象都是可以动态扩展的,并且可以任意添加自定义的方法对象;业务处理层执行具体的业务规则、约束、数据计算,负责生成和管理对数据进行处理的代码对象,可以预编译和缓存所有的动态扩展代码,当界面生成层和格式化层调用自定义的代码和对象时,可以快速的返回对应的执行结果,业务处理层的代码对象可以根据用户需求任意的扩展,并在格式化层和界面生成层执行时根据需求通过业务处理层调用执行;
所述数据传输单元用于在不同层之间传递数据;
数据传输对象通过参数方式传递,和/或通过所述业务处理层中定义的代码直接生成或从页面中直接提取;优选地,所述数据传输对象是以JavaScript的JSON对象方式存储。
一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现所述可动态扩展数据的方法的步骤。
一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现所述可动态扩展数据的方法的步骤。
与现有技术相比,本发明的有益效果在于,通过使用客户端对数据处理全过程的解析和服务器端存储配置相结合,实现系统的可动态扩展,解决了用户对系统功能的动态扩展方面的需求问题。通过客户端缓存、预编译的方式,克服了大量数据处理时带来的执行速度问题,利用了客户端的计算能力,大大降低了服务器的处理压力,在系统运行过程中,可以提高服务器的服务能力,让服务器能够同时为更多客户端提供服务,并实现了数据在多个方面的动态扩展功能。
本发明使用共用字段的冗余数据表存储数据,限定必须使用类型标签字段区别不同数据的类型,其他所有属性都是通过格式化对象进行定义,通过灵活的代码配置可以任意扩展对数据的处理方法、界面结构、图表样式,无需重新编译发布系统就可以实现动态扩展,极大的提高了系统的适应性。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。
在附图中:
图1为本发明的一种可动态扩展数据的方法的流程图;
图2为本发明的数字类型以及扩展代码生成的过程流程图;
图3为本发明实施例的可动态扩展数据客户端解析模块的执行流程图;
图4为本发明实施例提供的一种计算机设备的结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和产品的例子。
在本公开使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本公开。在本公开和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本公开可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本公开范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
下面结合附图对本发明作进一步详细说明。
参阅附图图1,本发明提供一种可动态扩展数据的方法,包括以下步骤:
S1、客户端异步请求获取服务器存储的数据类型以及所述动态扩展代码;
优选地,用户每次登陆成功后,客户端在页面加载时异步请求获取服务器存储的字典值和扩展代码,全部缓存在客户端本地,预编译所述动态扩展代码,以供动态生成界面时检索和使用;
所述客户端异步请求获取服务器存储的数据类型以及所述动态扩展代码,优选地,本实施例采用HTML5技术,Ajax异步通信,优选地,本实施例所述数据类型为字典值,通过客户端定时向服务器端发起版本号请求,核对当前配置的版本号是否相同,当客户端版本号低于服务器的版本号值时,主动发起异步请求并刷新本地缓存的字典数据和扩展代码,以保证动态生成的页面即时更新;因为版本更替极少出现在用户登录使用过程中,可以人为的避开用户使用高峰期进行更新扩展代码,发起版本验证的时间间隔可以设置为不检查或者间隔较长时间;
S2、客户端根据获取的所述数据类型标签,执行缓存的对应所述动态扩展代码,动态生成图形用户界面;
用户通过地址链接发起访问请求,动态扩展所对应的处理模块主要是在客户端执行,优选地,使用JavaScript代码编写并实现的模块。
参阅附图图2所示,所述数字类型以及扩展代码生成的过程还包括:
S11、后台管理对数据库存储的数据类型做分类;
通过数据的每条记录的标签字段区分出所属数据类型,应用数据类型所对应的动态处理代码;优选地,以字典定义的数据类型标签区分所述数据类型,使用公用的数据类型字段进行区分,并且所述数据类型字段为所有数据共用并且必填,被用于扩展功能代码匹配时的标签使用,该字段的值限定为字典中定义的类型分类的数据集,该数据集由管理员通过修改字典项进行扩展;
S12、后台管理依据不同的数据类型进行地址的配置;
通过设置地址为所述数据类型定义功能按钮,为不同的数据类型分别设置对应的数据浏览、数据录入的页面地址,通过该地址设置可以为不同类型定义各类功能按钮,可以控制用户对不同类型数据操作时的首页访问权限和数据的操作权限;地址的格式由公共访问地址加上所述数据类型标签值组成,数据类型的页面地址格式由公共访问地址加上数据类型标签值组成,通过标签值关联对应的数据类型,地址模块的配置还包括页面上的功能按钮设置,可以扩展该类型的可用操作,按钮的服务地址也是由公共地址和对应的数据类型标签值组成,所有相关的地址配置可以用以设置用户权限,通过对用户访问对应地址的限制达到用户权限设置的目的;
S13、后台管理对数据的对应功能配置所述动态扩展代码;
数据的表单界面生成代码、列表界面生成代码、数据格式对象、图表格式对象、数据的动态处理方法对象都存储在数据库表中,管理员可以在后台通过管理界面进行增删改查的操作,以键值对的表方式存储,与字典一样使用二级表结构存储,通过灵活的代码配置可以任意扩展对数据的处理方法、界面结构、图表样式等动态处理方法对象,可以通过自定义的一级和二级的标签值,查找并动态地被所有功能模块调用,调用过程中会被客户端自动编译并缓存以提高运算速度;无需重新编译发布系统就可以实现动态扩展,极大的提高了系统的适应性。
所述客户端异步请求获取服务器存储的数据类型以及所述动态扩展代码,是通过客户端定时向服务器端发起版本号请求,核对当前配置的版本号是否相同,当客户端版本号低于服务器的版本号值时,主动发起异步请求并刷新本地缓存的数据类型和扩展代码;
优选地,所述客户端异步请求获取服务器存储的数据类型以及所述动态扩展代码,优选地,所述数据类型为字典值,通过客户端定时向服务器端发起版本号请求,核对当前配置的版本号是否相同,当客户端版本号低于服务器的版本号值时,主动发起异步请求并刷新本地缓存的字典数据和扩展代码,以保证动态生成的页面即时更新;因为版本更替极少出现在用户登录使用过程中,可以人为的避开用户使用高峰期进行更新扩展代码,发起版本验证的时间间隔可以设置为不检查或者间隔较长时间。
所述后台管理对数据库存储的数据类型做分类,是通过数据的每条记录的标签字段区分出所属数据类型,应用数据类型所对应的动态处理代码;
优选地,以字典定义的数据类型标签区分所述数据类型,使用公用的数据类型字段进行区分,并且所述数据类型字段为所有数据共用并且必填,被用于扩展功能代码匹配时的标签使用,该字段的值限定为字典中定义的类型分类的数据集,该数据集由管理员通过修改字典项进行扩展。
所述地址的配置,所述地址的格式由公共访问地址加上所述数据类型标签值组成,数据类型的页面地址格式由公共访问地址加上数据类型标签值组成,通过标签值关联对应的数据类型,地址模块的配置还包括页面上的功能按钮设置,可以扩展该类型的可用操作,按钮的服务地址也是由公共地址和对应的数据类型标签值组成,所有相关的地址配置可以用以设置用户权限,通过对用户访问对应地址的限制达到用户权限设置的目的。
一种可动态扩展数据的系统,包括:
异步数据请求模块:用于客户端异步请求获取服务器存储的数据类型以及所述动态扩展代码;
数据解析处理模块:用于客户端根据获取的所述数据类型标签,执行缓存的对应动态扩展代码,动态生成图形用户界面。
所述数字类型以及扩展代码生成的过程的模块,包括:
数据类型分类单元:用于对数据库存储的数据类型做分类;
数据地址配置单元:依据不同的数据类型进行地址的配置;
配置扩展代码单元:用于对数据的对应功能配置所述动态扩展代码。
所述数据解析处理模块,预编译并缓存异步获取的服务器图形用户界面代码对象、数据的动态处理方法对象,包括格式化层、界面生成层、业务处理层、以及数据传输单元,参阅附图图3所示;
所述格式化层,用于对数据使用自定义格式进行数据格式化的处理;
用户请求返回的数据会被格式化层接收并处理,数据分为详情和列表两种方式返回,格式化层根据数据记录的标签属性检索并使用对应类型的格式化对象,格式化对象由业务处理层管理,对数据使用自定义格式进行数据格式化的处理;格式化对象定义了每种类型所使用的数据库字段、属性名称、格式化方法;优选地,属性值的格式化方法为JavaScript编码,格式化方法还可以调用业务处理层中其他方法辅助处理,还可以通过对已有数据计算并动态生成额外的数据列;
所述界面生成层,用于对用户输入的数据进行合法性验证、调用并展示业务处理层的代码执行结果、对生成的界面元素进行赋值;
界面生成层调用业务处理层缓存的各类界面生成代码,生成界面外观、产生页面逻辑、控制图表的生成格式、对用户输入的数据进行合法性验证、调用并展示业务处理层的代码执行结果、对生成的界面元素进行赋值,界面生成过程就是把业务规则、约束、活动和数据结合在一起的过程;格式化层传来的数据对象同时包含原始数据和格式化后的数据,通过业务处理层调用数据类型所对应的专用或通用动态代码,生成表单录入、详情、列表、图表分析界面,在界面生成过程中还可以调用业务处理层管理的方法进行更多的自定义功能扩展;
所述业务处理层,是各类自定义动态函数和对象的管理层,用于在客户端请求、接收、缓存、检索、预编译服务器端存储的动态代码,所述业务处理层管理的所有对象都是可以动态扩展的;
业务处理层是各类自定义动态函数和对象的管理层,负责在客户端请求、接收、缓存、检索、预编译服务器端存储的动态代码,被业务处理层管理的所有对象都是可以动态扩展的,并且可以任意添加自定义的方法对象;业务处理层执行具体的业务规则、约束、数据计算,负责生成和管理对数据进行处理的代码对象,可以预编译和缓存所有的动态扩展代码,当界面生成层和格式化层调用自定义的代码和对象时,可以快速的返回对应的执行结果,业务处理层的代码对象可以根据用户需求任意的扩展,并在格式化层和界面生成层执行时根据需求通过业务处理层调用执行;
所述数据传输单元用于在不同层之间传递数据;
数据传输对象通过参数方式传递,和/或通过所述业务处理层中定义的代码直接生成或从页面中直接提取;优选地,所述数据传输对象是以JavaScript的JSON对象方式存储。
与现有技术相比,本发明的有益效果在于,通过使用客户端对数据处理全过程的解析和服务器端存储配置相结合,实现系统的可动态扩展,解决了用户对系统功能的动态扩展方面的需求问题。通过客户端缓存、预编译的方式,克服了大量数据处理时带来的执行速度问题,利用了客户端的计算能力,大大降低了服务器的处理压力,在系统运行过程中,可以提高服务器的服务能力,让服务器能够同时为更多客户端提供服务,并实现了数据在多个方面的动态扩展功能。
本发明使用共用字段的冗余数据表存储数据,限定必须使用类型标签字段区别不同数据的类型,其他所有属性都是通过格式化对象进行定义,通过灵活的代码配置可以任意扩展对数据的处理方法、界面结构、图表样式,无需重新编译发布系统就可以实现动态扩展,极大的提高了系统的适应性。
本发明解决了在当今社会环境下,随着各种统计数据类型的增多,各类数据属性变化快且不统一,难以整理汇总,统计分析困难的问题。
本发明实施例还提供了一种计算机设备,该计算机设备可集成本发明实施例提供的一种可动态扩展数据的方法;附图图4是本发明实施例提供的一种计算机设备的结构示意图;参阅图4所示,该计算机设备包括:输入装置43、输出装置44、存储器42和处理器41;所述存储器42,用于存储一个或多个程序;当所述一个或多个程序被所述一个或多个处理器41执行,使得所述一个或多个处理器41实现如上述实施例提供的一种安防物联网的控制方法;其中输入装置43、输出装置44、存储器42和处理器41可以通过总线或者其他方式连接,图4中以通过总线连接为例。
存储器42作为一种计算设备可读写存储介质,可用于存储软件程序、计算机可执行程序,如本发明实施例所述的一种安防物联网的控制方法对应的程序指令;存储器42可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据设备的使用所创建的数据等;此外,存储器42可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件;在一些实例中,存储器42可进一步包括相对于处理器41远程设置的存储器,这些远程存储器可以通过网络连接至设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入装置43可用于接收输入的数字或字符信息,以及产生与设备的用户设置以及功能控制有关的键信号输入;输出装置44可包括显示屏等显示设备。
处理器41通过运行存储在存储器42中的软件程序、指令以及模块,从而执行设备的各种功能应用以及数据处理,即实现上述的可动态扩展数据的方法。
上述提供的计算机设备可用于执行上述实施例提供的可动态扩展数据的方法,具备相应的功能和有益效果。
本发明实施例还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行如上述实施例提供的一种可动态扩展数据的方法,存储介质是任何的各种类型的存储器设备或存储设备,存储介质包括:安装介质,例如CD-ROM、软盘或磁带装置;计算机系统存储器或随机存取存储器;非易失性存储器,诸如闪存、磁介质(例如硬盘或光存储);寄存器或其它相似类型的存储器元件等;存储介质可以还包括其它类型的存储器或其组合;另外,存储介质可以位于程序在其中被执行的第一计算机系统中,或者可以位于不同的第二计算机系统中,第二计算机系统通过网络(诸如因特网)连接到第一计算机系统;第二计算机系统可以提供程序指令给第一计算机用于执行。存储介质包括可以驻留在不同位置中(例如在通过网络连接的不同计算机系统中)的两个或更多存储介质。存储介质可以存储可由一个或多个处理器执行的程序指令(例如具体实现为计算机程序)。
当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上实施例所述的一种可动态扩展数据的方法,还可以执行本发明任意实施例所提供的一种可动态扩展数据的方法。
结合附图所示的优选实施方式描述了本发明的技术方案,但是,本领域技术人员容易理解的是,本发明的保护范围显然不局限于这些具体实施方式。在不偏离本发明的原理的前提下,本领域技术人员可以对相关技术特征做出等同的更改或替换,这些更改或替换之后的技术方案都将落入本发明的保护范围之内。
以上所述仅为本发明的优选实施例,并不用于限制本发明;对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种可动态扩展数据的方法,其特征在于,包括以下步骤:
客户端异步请求获取服务器存储的数据类型以及所述动态扩展代码;
客户端根据获取的所述数据类型标签,执行缓存的对应所述动态扩展代码,动态生成图形用户界面。
2.根据权利要求1所述的方法,其特征在于,所述数字类型以及扩展代码生成的过程还包括:
后台管理对数据库存储的数据类型做分类;
后台管理依据不同的数据类型进行地址的配置;
后台管理对数据的对应功能配置所述动态扩展代码。
3.根据权利要求1所述的方法,其特征在于,所述客户端异步请求获取服务器存储的数据类型以及所述动态扩展代码,是通过客户端定时向服务器端发起版本号请求,核对当前配置的版本号是否相同,当客户端版本号低于服务器的版本号值时,主动发起异步请求并刷新本地缓存的数据类型和扩展代码。
4.根据权利要求2所述的方法,其特征在于,所述后台管理对数据库存储的数据类型做分类,是通过数据的每条记录的标签字段区分出所属数据类型,应用数据类型所对应的动态处理代码。
5.根据权利要求2所述的方法,其特征在于,所述地址的配置,所述地址的格式由公共访问地址加上所述数据类型标签值组成,通过标签值关联对应的数据类型。
6.权利要求1-5任一项所述的可动态扩展数据的方法的系统,其特征在于,包括:
异步数据请求模块:用于客户端异步请求获取服务器存储的数据类型以及所述动态扩展代码;
数据解析处理模块:用于客户端根据获取的所述数据类型标签,执行缓存的对应动态扩展代码,动态生成图形用户界面。
7.根据权利要求2所述数字类型以及扩展代码生成的过程的模块,其特征在于,包括:
数据类型分类单元:用于对数据库存储的数据类型做分类;
数据地址配置单元:依据不同的数据类型进行地址的配置;
配置扩展代码单元:用于对数据的对应功能配置所述动态扩展代码。
8.根据权利要求6所述的可动态扩展数据的系统,其特征在于,所述数据解析处理模块,包括格式化层、界面生成层、业务处理层、以及数据传输单元;
所述格式化层,用于对数据使用自定义格式进行数据格式化的处理;
所述界面生成层,用于对用户输入的数据进行合法性验证、调用并展示业务处理层的代码执行结果、对生成的界面元素进行赋值;
所述业务处理层,用于在客户端请求、接收、缓存、检索、预编译服务器端存储的动态代码;
所述数据传输单元用于在不同层之间传递数据。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现权利要求1-5所述可动态扩展数据的方法的步骤。
10.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1-5任一所述可动态扩展数据的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011078339.5A CN112181391A (zh) | 2020-10-10 | 2020-10-10 | 一种可动态扩展数据的方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011078339.5A CN112181391A (zh) | 2020-10-10 | 2020-10-10 | 一种可动态扩展数据的方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112181391A true CN112181391A (zh) | 2021-01-05 |
Family
ID=73948038
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011078339.5A Pending CN112181391A (zh) | 2020-10-10 | 2020-10-10 | 一种可动态扩展数据的方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112181391A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117519704A (zh) * | 2024-01-08 | 2024-02-06 | 慧新全智工业互联科技(青岛)有限公司 | 数据库应用界面自动构建方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101699393A (zh) * | 2009-10-09 | 2010-04-28 | 中国电子科技集团公司第二十八研究所 | 一种面向网络的智能化软件界面动态生成方法 |
CN107071066A (zh) * | 2017-06-07 | 2017-08-18 | 北京潘达互娱科技有限公司 | 页面访问方法及装置 |
CN107301051A (zh) * | 2017-06-27 | 2017-10-27 | 深圳市金立通信设备有限公司 | 终端动态数据的缓存与交互方法、终端、系统及计算机可读存储介质 |
CN109189383A (zh) * | 2018-08-28 | 2019-01-11 | 厦门海迈科技股份有限公司 | 代码文件的生成方法、装置、计算设备和存储介质 |
-
2020
- 2020-10-10 CN CN202011078339.5A patent/CN112181391A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101699393A (zh) * | 2009-10-09 | 2010-04-28 | 中国电子科技集团公司第二十八研究所 | 一种面向网络的智能化软件界面动态生成方法 |
CN107071066A (zh) * | 2017-06-07 | 2017-08-18 | 北京潘达互娱科技有限公司 | 页面访问方法及装置 |
CN107301051A (zh) * | 2017-06-27 | 2017-10-27 | 深圳市金立通信设备有限公司 | 终端动态数据的缓存与交互方法、终端、系统及计算机可读存储介质 |
CN109189383A (zh) * | 2018-08-28 | 2019-01-11 | 厦门海迈科技股份有限公司 | 代码文件的生成方法、装置、计算设备和存储介质 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117519704A (zh) * | 2024-01-08 | 2024-02-06 | 慧新全智工业互联科技(青岛)有限公司 | 数据库应用界面自动构建方法 |
CN117519704B (zh) * | 2024-01-08 | 2024-04-23 | 慧新全智工业互联科技(青岛)有限公司 | 数据库应用界面自动构建方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9996565B2 (en) | Managing an index of a table of a database | |
US10002170B2 (en) | Managing a table of a database | |
CN107133309B (zh) | 流程实例的存储、查询方法及装置、存储介质及电子设备 | |
CN111339171B (zh) | 数据查询的方法、装置及设备 | |
CN112433712B (zh) | 报表展示方法、装置、计算机设备和存储介质 | |
CN113590433B (zh) | 数据管理方法、数据管理系统和计算机可读存储介质 | |
CN111414361A (zh) | 标签数据存储方法、装置、设备及可读存储介质 | |
CN110515979B (zh) | 数据查询方法、装置、设备和存储介质 | |
CN112181391A (zh) | 一种可动态扩展数据的方法及系统 | |
US12001458B2 (en) | Multi-cloud object store access | |
CN112783842A (zh) | 一种日志收集方法和装置 | |
CN118034822A (zh) | 页面处理方法、装置、设备和存储介质 | |
CN115905274A (zh) | 数据处理的方法、装置、电子设备及介质 | |
CN111782834A (zh) | 图像检索的方法、装置、设备及计算机可读存储介质 | |
CN104156358B (zh) | 一种用于数据库的表的批量读取方法、装置和系统 | |
CN110019113B (zh) | 一种数据库的业务处理方法及数据库服务器 | |
CN111078736A (zh) | 一种数据聚合处理方法、装置、终端及存储介质 | |
CN112861030B (zh) | Cdn的刷新方法和装置、缓存服务器以及存储介质 | |
CN116305288B (zh) | 一种隔离数据库资源的方法、装置、设备和存储介质 | |
CN113742010B (zh) | 页面多语言展示的方法和装置 | |
CN113641711B (zh) | 一种针对saas租户的数据缓存处理方法、装置及介质 | |
JP2023509812A (ja) | データ記憶方法、装置、クエリ方法、電子機器および可読媒体 | |
CN117271463A (zh) | 筛选用户的方法、装置、设备和计算机可读介质 | |
CN117591563A (zh) | 数据库的调用方法、装置、计算机设备和存储介质 | |
CN115016863A (zh) | 一种提升首屏性能的方法及装置 |
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 |