当前位置: 首页 > 专利查询>济南大学专利>正文

一种开发无模式文档型数据库应用的业务组件模型制造技术

技术编号:8906979 阅读:214 留言:0更新日期:2013-07-11 04:38
本发明专利技术公开了一种开发无模式文档型数据库应用的业务组件模型,包括无模式数据存储层业务组件、业务逻辑业务组件和用户界面层业务组件。无模式数据存储层业务组件包括集合组件、文档属性组件;业务逻辑业务组件包括数据操作业务逻辑组件、页面定向业务逻辑组件和织入代码业务逻辑组件;用户界面层业务组件,包括窗口组件、单元组件和元素组件。本发明专利技术解决无模式数据库应用软件开发效率低的问题,通过直接运行业务组件模型,取代传统软件调试、发布、部署繁琐的工作过程,开发人员仅使用无模式数据库的业务组件对系统业务进行描述和建模,通过模型转换和模型同步得到Web页面文件,Web页面文件、业务组件和模型执行引擎构成最终可运行的Web应用软件。

【技术实现步骤摘要】

本专利技术涉及一种快速开发应用软件的模型,尤其涉及一种开发无模式文档型数据库应用的业务组件模型
技术介绍
随着Web2.0、大数据、云应用等技术的发展,传统数据库在I/O、可扩展性上遇到了瓶颈,大数据的存取访问性能急剧下降。为了解决此问题,许多方案相继提出,比如分布式数据库、主从数据库、无模式数据库等。无模式数据库,是一种模式自由的数据库,其模式主要为关系、树、图、文档等多种方式。无模式数据库Web应用软件是指基于Web,数据存取采用无模式数据库的应用软件,在大数据查询、统计和分析等方面体现出性能优势,成为一种新的应用模式。无模式文档型数据库,是无模式数据库的一种,在大数据的前提下可以替代传统的关系型数据库,用于解决数据库I/O、可扩展性的瓶颈问题。现有的技术中,使用模型驱动开发方法,通过业务组件配置、建模、转换等方式快速生成一个可运行系统,在提高开发效率方面的作用尤其明显。因此,借助于模型驱动的思想来加速无模式数据库应用软件开发的需求十分普遍。然而,现有的业务组件模型和模型驱动的软件快速开发方法都是面向传统关系数据库的,缺乏对无模式数据库的支持。由于数据库模式不同,传统关系型数据库应用软件快速开发方法不完全适用于新兴的无模式数据库应用。目前针对无模式数据库应用软件快速开发方法的领域尚属空白。目前有大量使用模型驱动开发方法开发关系型数据库应用软件的成功案例,说明模型驱动软件开发方法是成功的。虽然无模式数据库刚刚提出,基于它的应用还不多,但是它的一些应用是非常需要的,尤其需要一种模型驱动的无模式数据库应用软件的快速开发方法。模型驱动开发的基本思想是一切都是模型,需要把业务逻辑用一种模型描述出来。而复杂的业务逻辑很难抽象成模型。
技术实现思路
本专利技术的目的就是为了解决上述问题,提供一种开发无模式文档型数据库应用的业务组件模型,通过直接运行创建的支持无模式文档型数据库的业务组件模型,取代传统软件调试、发布、部署繁琐的工作过程,解决新兴无模式文档型数据库应用软件开发效率低的问题,降低开发难度。开发人员只需要使用无模式文档型数据库的业务组件模型对系统业务进行描述,通过模型转换得到Web页面文件。Web页面文件、业务组件模型和模型执行引擎构成了最终可运行的应用软件。为了实现上述目的,本专利技术采用如下技术方案:—种开发无模式文档型数据库应用的业务组件模型,包括业务组件模型,与模型执行引擎和Web页面文件连接,描述无模式文档型数据库应用软件的数据存储、业务逻辑和用户界面;模型执行引擎,用于对业务组件模型进行解析,通过模型转换,用业务组件模型替换模板文件中的表达式,从而生成Web页面文件;Web页面文件,为业务组件模型进行模型转换后生成的系统Web页面。所述业务组件模型包括依次连接的无模式文档型数据库的业务逻辑业务组件模型、数据存储层业务组件模型和用户界面层业务组件模型。所述模型执行引擎负责直接运行业务组件模型;通过直接运行业务组件模型、取代无模式数据库应用软件手工开发、发布、部署、调试繁琐的过程;软件研制不需要开发人员编码,只需要设计人员使用业务运行系统对业务组件模型进行描述和建模,通过模型转换生成Web页面文件,即可得到可运行系统。下面分别说明各业务组件模型。首先,所述数据存储层业务组件模型负责描述无模式文档型数据库中的数据对象。所述数据存储层业务组件模型包括集合组件模型、文档属性组件模型。所述集合组件模型(Collection)描述一组二进制JavaScript对象记号(BinaryJavaScript Object Notation,简称BS0N)文档的集合。每个文档(Document)由多个键值序对组成。所述键值序对,包括键和值两个元组,键表示该序对名称,值表示该序对的值。由于无模式文档型数据库数据拥有动态模式特性,文档结构支持同构和异构。集合组件模型用于描述业务数据与无模式数据库中集合的映射关系,由无模式数据的集合名、数据范围、描述信息等属性组成。所述文档属性组件模型(Document Attribute)描述每个文档的列存储。由于无模式文档型数据库数据拥有动态模式特性,每个文档属性的键允许是不同的。文档属性组件模型描述业务数据与无模式文档型数据库中文档键值序对的映射关系,由文档属性名和参考值等属性组成。所述文档属性组件模型派生出三类细粒度的组件模型:数据类型文档属性组件模型、枚举类型文档属性组件模型和按钮类型文档属性组件模型。所述数据类型文档属性组件模型,用于描述文档的列存储,其取值范围任意;所述枚举类型文档属性组件模型,用于描述文档的列存储,其取值范围限定为枚举值;所述按钮类型文档属性组件模型,用于描述自定义按钮的文档属性,通过为按钮定义相应的业务处理逻辑,将按钮事件驱动式的业务集成到系统。所述数据类型文档属性组件,其参考值属性为该文档属性数据的默认值;所述枚举类型文档属性组件,其参考值属性为文档属性数据枚举集合;所述按钮类型文档属性组件,其参考值属性为点击该按钮时执行的业务逻辑组件标识。其次,所述业务逻辑业务组件模型用于描述无模式文档型数据库应用软件中的业务逻辑。通过自定义按钮的处理过程将特定的业务逻辑与业务模型运行有机集成起来,将业务逻辑与业务数据存取和展示分离。业务逻辑组件模型由业务名称和业务值等属性组成。所述业务逻辑业务组件模型派生出三类细粒度的组件模型:数据操作业务逻辑组件模型、页面定向业务逻辑组件模型和织入代码业务逻辑组件模型。所述数据操作业务逻辑组件模型的业务值属性可用结构化查询语言(StructuredQuery Language,简称 SQL)、无结构化查询语言(Unstructured Data Query Language,简称UnQL)、自定义函数等方式描述;所述页面定向业务逻辑组件模型的业务值属性可用重定向页面的统一资源定位符(Uniform Resource Locator,简称 URL)描述;所述织入代码业务逻辑组件模型的业务值属性可用切入点对应的执行代码块标识描述。所述数据操作业务逻辑组件模型(Data Manipulation)是基于无模式文档型数据库的一种数据复合操作的业务逻辑;数据操作业务逻辑组件模型的业务值属性可用一系列无模式文档型数据库的insert、update、remove复合操作、SQL、UnQL或自定义无模式数据库函数等方式描述。所述页面定向业务逻辑组件模型(Page Redirection)描述应用软件中的Web页面重定向;页面定向组件模型通常用于描述按钮类型文档属性模型的参考值,用于描述点击按钮要执行的业务逻辑。在页面重定向过程中,需要保持原有Web请求中的参数和会话信息传递。页面定向组件模型的业务值属性是具体页面定向的URL。所述织入代码业务逻辑组件模型(Aspect Code)用于描述页面定向业务逻辑组件模型和页面定向业务逻辑组件模型无法描述的复杂业务逻辑;织入代码组件模型通过织入代码块描述复杂的业务逻辑,为业务逻辑组件模型提供了一种灵活的扩展方式,适用于描述无法通过业务组件模型描述或无法抽象为模型的业务逻辑。织入代码组件模型的业务值属性为相应织入代码块标识。最后,所述用户界面层业务组件模型,用于描述无模式文档型数据库中的业务数据在用户界本文档来自技高网
...

【技术保护点】
一种开发无模式文档型数据库应用的业务组件模型,其特征是,包括业务组件模型,与模型执行引擎和Web页面文件连接,描述无模式文档型数据库应用软件的数据存储、业务逻辑和用户界面;模型执行引擎,负责直接运行业务组件模型;使用业务运行系统对业务组件模型进行描述和建模,通过模型转换生成Web页面文件,即得到可运行系统;Web页面文件,为业务组件模型进行模型转换后生成的系统Web页面。

【技术特征摘要】

【专利技术属性】
技术研发人员:马坤杨波陈广伟
申请(专利权)人:济南大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1