可扩展性
如何扩展 Mendix 平台?
- Mendix 运行时可以通过多种不同的方式进行扩展。以下部分详细介绍了如何通过 Mendix 连接器套件、Java 操作、JavaScript 小部件、Java 请求处理程序和数据存储。
- Mendix IDE Studio Pro 还可以通过利用扩展 API 进行扩展,详情请参阅 Studio Pro 可扩展性下文。
Java 操作和连接器套件
Java 操作支持创建可重复使用的微流活动,您可以在任何微流中使用它们。您可以创建特定于应用程序的 Java 操作,也可以将它们捆绑在一个模块中,以便其他项目和其他开发人员可以重复使用它们。
Java 操作通常用于与外部系统集成(因此称为“连接器”),但您并不局限于集成用例。事实上,您可以用 Java 做任何您能想到的事情,包括使用大多数现有的(开源)Java 库。这使您能够为所需的任何类型的功能提供插件。
为了确保您的团队成员甚至外部用户可以轻松使用自定义 Java 操作,它们已完全集成到微流编辑器体验中 Mendix Studio Pro. 其他 Mendix 开发人员不会看到标准微流活动和自定义 Java 操作之间的区别。
下面的图片取自 如何使用 Mendix 连接器套件 ,在 Mendix Studio Pro 使用方法。如您所见, 将对象合并到列表中 自定义操作看起来像任何其他微流活动,带有图标和用户友好的参数:
所有自定义 Java 操作均可在微流工具箱中使用,方便非技术人员发现和使用 Mendix 用户。事实上,用户只需将活动从工具箱拖到微流中,而无需知道它是作为自定义 Java 操作实现的。要在工具箱中显示 Java 操作,只需选择 公开为微流动作 复选框,如本视频所示:
在 Java 操作实现中,您可以使用 Mendix 运行时 API 建立紧密的整合 Mendix 对象和 Java 代码。
有关使用自定义 Java 操作的更多信息,请探索 Mendix 说明文件:
可插入小部件
您可以扩展 前端 您 Mendix 通过基于 JavaScript 或 TypeScript 构建自定义小部件来应用。有关更多信息,请参阅 可插入小部件 部分 前端.
可插入操作
为了创建自定义应用程序逻辑, Mendix 使开发人员能够构建自定义纳米流操作。这些可插入的纳米流操作(在 Studio Pro 中称为 JavaScript 操作)可用于利用设备功能或在客户端中执行任何类型的逻辑。有关更多信息,请参阅 可插入式 Nanoflow 操作 部分 前端.
Java 请求处理程序
Java 请求处理程序 API 可让您使用 Java 创建自定义 HTTP 端点实现。请求处理程序基本上是一种 Java 方法,它接收 HTTP 请求、使用输入,然后向调用者发送响应。这在许多情况下都很有用,例如自定义身份验证、特定页面的深层链接和自定义协议实现。请求处理程序的实现不仅限于 Java,因为您可以运行 Mendix 来自 Java 实现的微流和活动。
请注意,随着本机 REST 发布的出现,对自定义 Java 请求处理程序的需求已大大减少。
数据存储
支持的所有查询语言 Mendix 可以通过 Java API 使用。其中包括 XPath、OQL 和 SQL:
- 可以通过 Java 使用 XPath 检索Xpath 方法
- 可以通过 Java 使用 OQL 检索OQL 方法
- 数据集中模型中定义的 OQL 查询可以通过 创建OQLTextGetRequestFromDataSet 方法
- 可以通过 Java 使用 SQL 执行连接 方法
XPath 和 OQL 都是可移植的,这意味着无论您使用哪种数据库,它们的行为都是相同的。SQL 可以使用您选择的数据库的所有功能。一种情况是使用特定于数据库的索引来提高查询的性能。
您可以使用 Mendix的 Java API 进行注册 实体事件监听器 适用于所有实体。这可用于提取审计信息或将所有数据更改实时导出到外部系统。
有关更多信息,请参阅此 Mendix 说明文件:
如何向第三方服务提供可重用的连接器?
通用连接器可轻松与其他开发人员和公司共享。您可以从中导出连接器模块 Mendix Studio Pro,然后可以将其导入到其他 Mendix 应用程序项目。连接器模块也可以上传到 Mendix 市场 – 可以将其发布到公共市场,以便任何人都可以使用,也可以将其发布到贵公司的私人市场,以便只有贵公司的开发人员才能重复使用它。有关更多信息,请参阅 如何分享市场内容 ,在 Mendix 门户指南.
连接器包含使用它们所需的一切,例如微流活动、逻辑、域模型、Java 代码以及任何所需的 Java 库。连接器的用户看不到这种复杂性。他们只需将您的自定义微流活动从工具箱拖到任何微流中即可使用您的连接器。
以下是连接器的示例:

Studio Pro 可扩展性
除了设计时可扩展性之外, Mendix 还提供 IDE 扩展功能,允许您扩展 Studio Pro、 Mendix IDE。
扩展性 API 可让您使用 C# 和 React 和 Typescript 等 Web 技术扩展 Studio Pro。API 不仅可让您通过有助于改善开发人员体验的功能扩展 Studio Pro 的功能,还可使用定制的编辑器和特定于领域的语言扩展设计时语言。
API 提供对 Studio Pro 中打开的应用程序的访问,允许您在设计时执行任何操作。
工具的作用 Mendix 与之集成?
Mendix 与开发人员使用的多种工具无缝集成:
- 通过选择 为 Eclipse 部署 in Mendix Studio Pro,您的 Mendix app 项目将与 Eclipse 兼容,这意味着您可以从 Eclipse 运行和调试您的应用程序。您还可以访问 Java 源代码,在其中可以实现自定义 Java 操作。有关更多信息,请参阅 Mendix 文档 使用 Eclipse 和 如何调试 Java 操作.
- 更多来自Google的 Mendix 开发人员使用 IntelliJ IDEA。IntelliJ 允许您导入 Eclipse 项目,因此通过选择 为 Eclipse 部署 in Mendix Studio Pro,您还可以在 IntelliJ 中完成所有自定义 Java 操作编码。
- 小部件开发人员可以从构建中受益 可插入小部件.
开放标准的作用 Mendix 支持?
Mendix 大力采用开放标准,以支持平台与建立在平台上的应用程序的无缝集成,以及支持设计工件的交换。
这是对所使用的开放标准和技术的简要概述 Mendix 平台:
- 应用数据可以存储在大量主流的关系数据库管理系统中。 Mendix 使用 SQL 标准来定义和操作域模型和数据。多年来,SQL 已证明自己是一种灵活、多用途且面向未来的数据语言。甚至 NoSQL 数据库也采用 SQL 作为检索数据的默认方式。
- - Mendix Runtime 使用 Scala 和 Java 实现,并在 Java 虚拟机 (JVM) 上运行。与 SQL 类似,JVM 提供了一个灵活、多用途且面向未来的平台。Java 使我们能够运行 Mendix 大量系统和云平台上的平台。JVM 运行时对于大量编程语言来说都很灵活。这使得能够将 Java 等经过验证的语言与 Scala 等创新语言的功能特性相结合。
- Mendix 为许多与集成相关的开放标准提供支持,包括 Web 服务、SOAP、WSDL、XML Schema、REST、JSON、Swagger、OpenAPI 和 OData。
- 对于前端, Mendix 支持许多开放标准和许多事实上的标准,例如使用 HTML5、CSS3 和 React 呈现的网页。
- Mendix 通过敏捷方法论,采用了软件创新管理的最佳实践。 Mendix 平台提供了最常用的敏捷方法(即 Scrum)所需的工具,以便您可以管理您的 Mendix 应用项目。
- 对于托管, Mendix 已经采用了 Linux、Docker、Kubernetes 和 Cloud Foundry 等开放和事实上的托管技术。