发明内容
本发明所要解决的技术问题是提供一种元设施扩展方法及模块,提高开发效率,减小IT实施难度。
为解决上述技术问题,本发明提出了一种元设施扩展方法,包括:
在展示层用可缩放矢量图形SVG封装元元模型元素,生成元元模型组件, 所述元元模型组件包括附加属性,所述附加属性用于承载元信息;
根据所述元元模型组件创建元元模型实例,即元模型;
保存所述元模型。
进一步地,上述方法还可具有以下特点, 所述元元模型元素包括Package包、Class类、 Attribute属性、Reference参数、Association、 AssociationEnd 和Tag。
进一步地,上述方法还可具有以下特点, 根据所述元元模型组件创建元模型包括:
将所述元元模型组件添加到建模界面,生成元模型。
进一步地,上述方法还可具有以下特点, 保存所述元模型包括:
先将SVG图形转换为XMI,再将XMI转换为底层存储。
为解决上述技术问题,本发明提出了一种元设施扩展模块,包括:
封装单元,用于用可缩放矢量图形SVG封装元元模型元素,生成元元模型组件,所述元元模型组件包括附加属性,所述附加属性用于承载元信息;
建模单元,用于根据所述元元模型组件创建元元模型实例,即元模型;
存储单元,用于保存所述元模型。
进一步地,上述模块还可具有以下特点, 所述元元模型元素包括Package包、Class类、 Attribute属性、Reference参数、Association、 AssociationEnd 和Tag。
进一步地,上述模块还可具有以下特点, 所述建模单元包括:
第一建模子单元,用于将所述元元模型组件添加到建模界面,生成元模型。
进一步地,上述模块还可具有以下特点, 所述存储单元包括:
第一存储子单元,用于先将SVG图形转换为XMI,再将XMI转换为底层存储。
本发明的元设施扩展方法及模块,从最普遍的方法论出发,用元语言从通用层次逐步向特定领域深化描述,提供从一而终的统一的建模和开发方式,提高了开发效率,增强了程序的适应性、扩展性;在众多MDA阵营中寻求统一,减小了未来IT实施难度;启发国内程序员转变只停留在应用层面、一味的封装业务逻辑的开发思想和模式,提高业务抽象思维能力,重视代码质量,软件自身的质量;在元数据管理领域,能够提供通用、易扩展、适应性好的实施方案。
具体实施方式
以下结合附图对本发明的原理和特征进行描述,所举实例只用于解释本发明,并非用于限定本发明的范围。
图1为本发明实施例中元设施扩展方法的流程图。如图1所示,本实施例中,元设施扩展方法的流程可以包括以下步骤:
步骤101,在展示层用SVG(Scalable Vector Graphics,可缩放矢量图形)封装元元模型元素,生成元元模型组件;
元元模型也即MOF模型。
步骤101是在展示层完成的。对于元元模型的每种元素,均创建一个SVG元素,作为元建模的组件,每个元元模型组件都包括附加属性,附加属性用来承载元信息,供图形创建与展示、转换时使用。元元模型组件供建模界面使用。
元元模型元素可以包括Package包、Class类、 Attribute属性、Reference参数、Association、 AssociationEnd 和Tag等。
例如,可以在展示层,基于Web标准采用js+xml+html+css+svg对于元元模型的每种元素:Package、 Class、 Attribute、Reference、 Association、 AssociationEnd 、Tag封装成元元模型组件,用来通过web页面编辑来实现元模型建模。
步骤102,根据步骤101生成的元元模型组件创建元元模型实例,即元模型;
在SVG封装的元元模型组件基础上,可以通过拖拉拽功能,实现元模型建模界面。
具体地,步骤102可以包括:将元元模型组件添加到建模界面,生成元模型。
通过元元模型组件创建元元模型实例,从而创建特定领域的元模型。目前多数浏览器已经支持SVG,从而实现了浏览器上的元模型建模。
步骤103,保存步骤102创建的元模型。
建好的元模型图形按照XMI规范定义通过js生成符合XMI格式的文件。并将文件中元模型信息读取并存储到元数据库中。同时在前端页面添加元模型组件。
通过元模型组件,在页面上实现元模型的建模,同时生成XMI格式的文件。将元模型的XMI文件读取并存储到元数据库。
元模型的存储方案,可以采用NoSQL数据库MongoDB来存储,这种数据库存储结构灵活、易扩展、查询效率高、事务支持相对弱,非常适合元数据存储。可以按照MOF规范的JMI编程接口,实现一套元数据的NoSQL存储机制。
具体地,步骤103可以包括:先将SVG图形转换为XMI,再将XMI转换为底层存储。
SVG代表前端展示,XMI是元数据交换格式,可以通过SVG和XMI二者的转换实现元数据在展示层和存储层的交互。
在SVG图形与XMI的转换中,用户在前端界面通过拖拽元元模型组件创建元元模型实例,即以SVG表示的元模型。保存元模型的过程可以是:先将SVG转换为XMI,然后再将XMI转换为底层存储,该过程可以表示为:SVG图形到XMI 到元模型底层存储。
在SVG图形与XMI的转换中,将后台存储的元模型转换为SVG的过程为: 元模型底层存储到XMI 到 SVG ;显示SVG后,在SVG元素上添加图形事件并支持拖拽功能。
本发明的元设施扩展方法中,元模型的代码能够自动生成。从元数据库中提取符合某个应用的元模型,提取元模型中包、类等元模型信息生成类代码。
本发明的元设施扩展方法中,如果需要在前端展示已有元模型,可以采用如下过程:将后台存储的元模型转换为SVG;显示SVG后,在SVG元素上添加图形事件,支持拖拽等功能。
可以将应用打包为metadesigner.war部署到web服务器,配置数据源,启动应用。并且通过http://ip:port/metadesigner访问应用。
本发明的元设施扩展方法中,元模型建模可以采用如下流程:打开建模页面,选择元元模型,根据要定制或扩展的元模型信息,拖动各种元元模型组件到绘图区,建立元模型图形;点击保存按钮,保持为XMI文件,同时在页面上生成了元模型套件;点击保存并存储按钮,存储XMI文件的元模型信息到元存储库,同时在页面上生成了元模型套件;点击生成代码按钮,可以根据建好的模型生成Java代码。
本发明的元设施扩展方法采用统一的方法论,统一的编程接口,灵活跨数据库的存储形成一套基于MOF的元设施扩展算法,实现集元模型建模、元数据建模、元数据分析应用、MDA开发于一体的集成开发应用平台。
本发明的元设施扩展方法具有以下有益效果:
1. 从最普遍的方法论出发,用元语言从通用层次逐步向特定领域深化描述,提供从一而终的统一的建模和开发方式,提高了开发效率,增强程序的适应性、扩展性;
2. 在众多MDA阵营中寻求统一,减小了未来IT实施难度;
3. 启发国内程序员转变只停留在应用层面,一味的封装业务逻辑的开发思想和模式,提高业务抽象思维能力,重视代码质量,软件自身的质量;
4. 在元数据管理领域,能够提供通用、易扩展、适应性好的实施方案。
本发明还提出了一种元设施扩展模块,用以实施上述的元设施扩展方法。
图2为本发明实施例中元设施扩展模块的结构框图。如图2所示,本实施例中,元设施扩展模块200可以包括封装单元210、建模单元220和存储单元230。其中,封装单元210用于在展示层用SVG封装元元模型元素,生成元元模型组件。建模单元220用于根据封装单元210生成的元元模型组件创建元元模型实例,即元模型。存储单元230用于保存建模单元220创建的元模型。
其中,封装单元210对于元元模型的每种元素,均创建一个SVG元素,作为元建模的组件,每个元元模型组件都包括附加属性,附加属性用来承载元信息,供图形创建与展示、转换时使用。元元模型组件供建模界面使用。
元元模型元素可以包括Package包、Class类、 Attribute属性、Reference参数、Association、 AssociationEnd 和Tag等。
其中,建模单元220可以包括第一建模子单元。第一建模子单元用于将元元模型组件添加到建模界面,生成元模型。
其中,存储单元230可以包括第一存储子单元。第一存储子单元用于先将SVG图形转换为XMI,再将XMI转换为底层存储。
本发明的元设施扩展模块具有以下有益效果:
1. 从最普遍的方法论出发,用元语言从通用层次逐步向特定领域深化描述,提供从一而终的统一的建模和开发方式,提高了开发效率,增强程序的适应性、扩展性;
2. 在众多MDA阵营中寻求统一,减小未来IT实施难度;
3. 启发国内程序员转变只停留在应用层面,一味的封装业务逻辑的开发思想和模式,提高业务抽象思维能力,重视代码质量,软件自身的质量;
4. 在元数据管理领域,能够提供通用、易扩展、适应性好的实施方案。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。