跳到主要内容

外部数据支持-Excel,SQL,CSV文件

外部数据

如何在我的应用程序中存储和使用集成数据?

当使用通过集成(例如,Web 服务或 REST 服务)获取的数据时,您有两种存储和使用数据的选项,如下所述。

存储在可持久实体中

此选项意味着数据存储在应用程序数据库中。如果您希望在较长时间内(例如几小时或几天)使用数据,或者希望与应用程序的不同用户共享数据,则这是一个不错的选择。存储集成数据的另一个原因是,您所依赖的服务速度很慢或经常不可用。

通过非持久性实体存储在内存中

此选项意味着只有检索数据的用户会话才能在其会话期间访问数据。如果您在短时间内需要数据,并且希望确保数据始终与数据所有者(即提供数据的服务)保持同步,则这可能是一个有效的选项。

Mendix的导出和导入映射为可持久和非持久实体提供支持。

如何 Mendix 支持直接访问外部 SQL 数据库吗?

数据库连接器 可用的 Mendix Marketplace 可用于在您使用的任何数据库上运行 SQL 操作。数据库连接器支持查询以及更新、删除和存储过程调用等操作。

数据库连接器与支持 JDBC 的关系数据库配合良好。一些 NoSQL 数据库还包含通过 JDBC 的 SQL,因此对于这些 NoSQL 数据库,您也可以使用数据库连接器。大多数 NoSQL 数据库还通过 REST API 提供连接。如果是这种情况,您可以使用 Mendix的广泛 REST 支持 使用这些数据库中的数据。

如何从 Excel 等来源导入和导出数据?

开箱即用, 数据网格 小部件可让您向应用程序用户提供数据网格中显示的数据的 Excel 导出。对于 Excel 格式的数据批量导入或导出,您可以使用以下两种 Mendix 市场模块:

  • Excel导入器 – 此模块允许您为要导入的不同 Excel 工作表定义模板。模板定义工作表中提供的数据以及如何将其映射和转换为您 Mendix 应用程序。如果您定期上传包含更新数据的相同工作表,则可以重复使用这些模板。
  • Excel 导出器 – 此模块允许您定义如何从您的 Mendix 应用程序作为 Excel 工作表。使用这些模板,您可以定期将数据导出到完全相同格式的 Excel 工作表中。有关更多信息,请参阅 如何使用 Excel 导出器 ,在 Mendix Studio Pro 使用方法.

如何导入和导出 CSV 格式的数据?

Mendix 市场 包含多个可以帮助您导入或导出 CSV 格式数据的模块:

  • Excel导出 – 该模块还支持导出为CSV格式。
  • 平面和分隔文件导入 – 该模块允许您仅从运行时的配置中导入平面和分隔文件(CSV),从而减轻您的 Java 工作。
  • 平面和分隔文件导出 – 该模块可以轻松导出固定长度和分隔文件(CSV),因为它可以处理所有 Java 编码并允许您轻松地从微流中导出数据。
  • 简单的 CSV 导出器 – 该模块用于从微流导出到 CSV。
  • CSV 服务 – 此模块是将 Excel 数据输入和输出的最简单、最快捷的方法 Mendix 应用程序。它为应用程序中的每个实体创建一个 REST 端点,允许您以逗号分隔值格式上传和下载数据。它还提供微流操作,用于在微流中导入和导出 CSV。

如何导入和导出固定长度和分隔文件?

上面的一些模块支持固定长度和分隔文件。

如果你找不到支持特定固定长度格式的模块,请使用 Mendix 连接器套件 创建自定义微流操作来处理导入和导出可能是一个选项。有关连接器套件和 Mendix Java API 提供微流扩展,请参阅部分 如何扩展 Mendix 平台? in 可扩展性.

如何进行批量导出和导入?

您可以通过多种方式从您的 Mendix 应用范围:

  • 定制构建服务 – 例如使用 Web 服务或 REST 服务。这种方法的好处是,它使您能够调整数据并验证其是否符合您的业务规则。
  • 备份还原 – 您可以使用自定义 (SQL) 脚本来填充 Mendix 开发数据库中包含您需要的数据。完成后,您可以创建此数据库的备份,并将其恢复到所需的目标数据库中。
  • 源数据库 – 当您在一个新的空数据库上启动运行时时,您可以指定它需要使用来自另一个数据库的数据进行初始化。

如果您想在两个环境之间创建实时大规模同步,则可以使用实体事件监听器。这使您能够为每个对象事件运行自定义 Java 逻辑(例如,当数据库中的数据发生更改时)。在此自定义处理程序中,您可以提供逻辑以将数据更改复制到另一个应用程序。

选择你的语言