OneCode 低代码引擎元数据设计

简介: 前言: 在百度百科中,元数据被定义为:描述数据的数据,对数据及信息资源的描述性信息。在低代码平台中元数据的使用也是非常广泛,从前端可视化的组件的prop 属性定义,后端OR Maping数据库表映射,以及支撑系统模块关联关系,权限分配支撑等等都是基础性的元数据。而对于低代码平台及工具而言,其最主要的一个功能也是配置管理低代码组件的元数据信息。在业务组件发生需求变更时尽量通过修改元数配置的方式来改变组件的业务特性。

前言:

     在百度百科中,元数据被定义为:描述数据的数据,对数据及信息资源的描述性信息。在低代码平台中元数据的使用也是非常广泛,从前端可视化的组件的prop 属性定义,后端OR Maping数据库表映射,以及支撑系统模块关联关系,权限分配支撑等等都是基础性的元数据。而对于低代码平台及工具而言,其最主要的一个功能也是配置管理低代码组件的元数据信息。在业务组件发生需求变更时尽量通过修改元数配置的方式来改变组件的业务特性。

一,OneCode元数据实现

     OneCode 语言本身基于成熟的JAVA语言体系,在元数据管理方面采用了,JAVA5原生的Annoation代码注解配置来完成,通过JDK完成基础编译,具体的元数据含义则由OneCode代码引擎独立独立解析支持。

(1)OneCode元数据注解基础组成

      OneCode 元数据注解体系基础基础体系是一组基于经典MVC结构的注解分类。

编辑切换为居中

添加图片注释,不超过 140 字(可选)

   在模型(Module)类中中添加 @DBTable实现数据库表映射,或者在实体类中增加Aggregation聚合注解实现实体向聚合类的转换。

     在控制器中(Controller)中添加Web路由注解@RequestMapping来完成Controller向web 容器的注入实现。

   视图(View)中增加可被可视化设计器识别的视图注解代码。

(2)OneCode高级注解

     OneCode 在完成基础的MVC注解支持外,额外提供了基于模块以及工程体系的注解应用。模块注解中提供了大量的值对象描述及常用域功能集成支持,可以在MVC基础上,通过增加@Module 、@TreeView 、@GridVIew、@FormView等集成性注解标识将单一的数据交互过程标识为模块级的应用。实现一键生成应用从而实现对于业务模块的高聚合支持。

    在低代码应用中由于其场景的特殊性,对模块的发布以及工程管理应用提出了特殊的需求。OneCode在此基础上也提供了基于@Domain(领域服务) @Project (工程服务),允许开发者将第三方的引擎服务、常用业务服务以及工程本地代码导出发布预览等等提供元数据的支持。

编辑切换为居中

添加图片注释,不超过 140 字(可选)

二,OneCode元数据注解解耦关系关系设计

(1)OneCode元数据注解添加范围

     OneCode 支持开发者,在Java类、方法、字段属性以及构造函数上添加相应的注解。在类直接上直接添加@RequestMapping 直接声明可以将一组方法声明为Web可访问,也可以添加@GridAnnotaion @FormAnnataion等注解将当前实体声明为列表或者视图渲染。同样服务的方法注解上,可以添加与方法对应的动作、事件、服务来实现对应领域事件及服务调度的注册。而对于树形对象、容器组件等应用组件需要动态装载或者符合构建的实体则通过在构造函数上添加对象声明周期管理的相关注解。

编辑切换为居中

MVC通用注解一览图

(2)OneCode 元数据注解接口添加原则

     OneCode允许用户在接口、抽象类、内部类以及普通类中添加注解,但更推荐用户将OneCode注解添加到独立的接口类,在多数的注解应用中,独立的接口描述基本上就已经能完成元数据的描述需求。程序在运行期可以通过,Spring 等IOC框架实现具体实现的以来注入。而当开发者通过OneCode建模工具来修改元数据定义时也可以有效的避免对具体实现的干扰。

编辑切换为居中

添加图片注释,不超过 140 字(可选)

编辑切换为居中

一键渲染

(3)OneCode 元数据注解分类理论支持及分类方法

     OneCode在通用MVC开发注解基础上,大幅的引入了领域驱动设计的模型原理。通过领域模型元数据注解支持 ,将通用MVC开发,引擎中间件、微服务调度服务、业务集成开发、以及工程全权限配置等领域范畴的服务进行领域对象声明,在工程初始化时统一引入到通用的领域模型中,供OneCode的领域模型工具完成进一步的建模配置

编辑切换为居中

添加图片注释,不超过 140 字(可选)

三,OneCode元数据建模工具支持

(1)OneCode元数据编辑工具

 OneCode 元素编辑工具是OneCode领域建模中最为重要的一个工具,OneCode代码工具可以直接读取附有OneCode元数据注解的Java原文件,开发者可以直接手工编辑Java代码。

编辑切换为居中

添加图片注释,不超过 140 字(可选)

也可以通过展开元数据属性图进行可视化的元数据编辑管理。

编辑切换为居中

添加图片注释,不超过 140 字(可选)

编辑切换为居中

添加图片注释,不超过 140 字(可选)


(2)仓储构建工具

     OneCode提供了强大的注解支持体系,但开发者在首次使用时往往还是会出现手足无措,仓储构建工具的目的是辅助开发者使用常用的实体模型,通过资源适配快速的完成基础工程的构建,然后再通过OneCode  编辑器完成进一步的元数据注解支持。 OneCode 内置了数据库驱动工具,允许用户直接数据库表结构,也可以通过自带的API桥接工具完成接口与实体的自动映射投影快速完成OneCode 工程构建。

编辑切换为居中

添加图片注释,不超过 140 字(可选)

编辑切换为居中

添加图片注释,不超过 140 字(可选)

(3)视图设计工具

           OneCode视图设计器,通常是OneCode建模的最后的一步,在完成前期数据建模及工程构建后,通过向视图设计器的无缝对接,实现了全栈应用的无代码应用。

编辑切换为居中

添加图片注释,不超过 140 字(可选)


相关文章
|
3月前
|
敏捷开发 监控 Java
服务设计思考:平台化
服务设计思考:平台化
28 0
|
数据可视化 IDE 安全
云巧-让开发更简单,更高效,更方便
近年来,快速迭代的新需求将引导企业改变其开发方式,进而转向使用支持快速、安全和高效的技术架构,组装式应用便成为了企业重要的战略技术趋势。组装式应用引入模块化的理念,使得各企业可以更敏捷、更有效地复用能力模块,提高商业的韧性和效率。云巧平台应运而生,能极大的改善开发环境,节省开发工作量,让开发更简单,更高效,更方便。
1656 0
|
27天前
|
安全
什么是短剧系统开发/需求设计/逻辑方案/项目指南
The short drama system development plan refers to the development of a system for organizing and managing the process of short drama production, release, and playback.
|
1月前
|
人工智能 DataWorks 数据可视化
心动基于阿里云DataWorks构建游戏行业通用大数据模型
心动游戏在阿里云上构建云原生大数据平台,基于DataWorks构建行业通用大数据模型,如玩家、产品、SDK、事件、发行等,满足各种不同的分析型应用的要求,如AI场景、风控场景、数据分析场景等。
335 1
|
存储 数据可视化 JavaScript
(低代码)可视化搭建平台数据源设计剖析
低代码平台属于APaaS(应用平台即服务),其解决的是企业内部应用协调和人效成本的问题. 随着计算机技术诸如云服务等的发展, 传统软件服务已无法满足数字化浪潮的压力,
954 0
|
3月前
|
SQL 运维 调度
Dataphin V3.14 版本升级|研发平台更易用,治理能力更完备,企业级适配更灵活
Dataphin V3.14 重磅升级,平台支持企业级适配,适配企业特色;研发体验易用性提升,数据研发更高效、任务运维更便捷;数据治理能力更完备,支持多对象批量操作,规则级告警配置、分级分类自动继承继承!
306 0
|
4月前
|
SQL 分布式计算 DataWorks
构建高效数据统计服务:阿里云产品实践指南
在今天的数字化时代,数据统计服务对于业务决策和优化至关重要。本文将介绍如何基于阿里云相关产品,搭建一个高效、可扩展的数据统计服务。我们将使用MaxCompute、DataWorks、Quick BI等阿里云产品,通过代码示例和详细说明,带你一步步完成整个流程。
111 0
|
6月前
|
搜索推荐 数据可视化 关系型数据库
OneCode 低代码平台 AIGC快速构建无代码应用
OneCode是一款基于DDD模型驱动设计的低代码引擎。从2022年底推出以来,现在的最新版本是1.1.0。本文重点是采用OneCode提供的工具来实际搭建一个简单的(员工请销假)业务应用。在搭建过程中穿插讲解一些功能设计思想以及使用方法。
|
10月前
|
移动开发 数据可视化 前端开发
低代码引擎核心技术,可视化动作——OneCode技术实践
低代码平台最大的一个技术特点便是开发图形化、可视化,通过拖拉拽方式快速实现企业数字化转型中的创新应用。在实践中通过图形化技术确实在一些特定领域大幅降低了应用开发的准入门槛,使得非专业人员也可以快速的参与到企业的数字化转型中。但随着业务的深入个性化需求也进一步增多,多数的低代码平台都无法满足相关的逻辑,这时仍然需要专业的程序员通过代码的方式来扩展。 但这些业务逻辑的代码繁琐且无用,只能让程序员在做低水平的重复工作。有痛点就会有需求,一些低代码平台推出了可视化逻辑编排能力,能够很好地解决这个问题。本文将结合OneCode平台的可视化逻辑编排设计来进行分析,希望对你有帮助。
|
12月前
|
存储 缓存 网络协议
从零开始搭建一个通用的业务技术架构,这套架构有点牛逼!
从零开始搭建一个通用的业务技术架构,这套架构有点牛逼!