MuleSoft - DataWeave 语言



DataWeave 本质上是 MuleSoft 表达式语言。它主要用于访问和转换通过 Mule 应用接收到的数据。Mule 运行时负责在我们的 Mule 应用中运行脚本和表达式,DataWeave 与 Mule 运行时紧密集成。

DataWeave 语言的功能

以下是 DataWeave 语言的一些重要功能:

数据可以非常轻松地从一种格式转换为另一种格式。例如,我们可以将 application/json 转换为 application/xml。输入负载如下:

{
   "title": "MuleSoft",
   "author": " tutorialspoint.com ",
   "year": 2019
}

以下是 DataWeave 中用于转换的代码:

%dw 2.0
output application/xml
---
{
   order: {
      'type': 'Tutorial', 
      'title': payload.title, 
      'author': upper(payload.author), 
      'year': payload.year
   }
}

接下来,输出负载如下:

<?xml version = '1.0' encoding = 'UTF-8'?>
<order>
   <type>Tutorial</type>
   <title>MuleSoft</title>
   <author>tutorialspoint.com</author>
   <year>2019</year>
</order>

转换组件可用于创建执行简单和复杂数据转换的脚本。

我们可以访问并使用核心 DataWeave 函数来处理我们需要的 Mule 事件的部分,因为大多数 Mule 消息处理器都支持 DataWeave 表达式。

先决条件

在我们的计算机上使用 DataWeave 脚本之前,我们需要满足以下先决条件:

  • 需要 Anypoint Studio 7 来使用 DataWeave 脚本。

  • 安装 Anypoint Studio 后,我们需要设置一个包含转换消息组件的项目才能使用 DataWeave 脚本。

使用 DataWeave 脚本的分步示例

为了使用 DataWeave 脚本,我们需要按照以下步骤操作:

步骤 1

首先,我们需要设置一个新项目,就像我们在上一章中使用文件 → 新建 → Mule 项目所做的那样。

步骤 2

接下来,我们需要提供项目的名称。在本例中,我们将其命名为Mule_test_script

步骤 3

现在,我们需要将转换消息组件Mule 调色板选项卡拖到画布上。如下所示:

DataWeave Script

步骤 4

接下来,在转换消息组件选项卡中,单击预览以打开预览窗格。我们可以通过单击预览旁边的空矩形来扩展源代码区域。

步骤 5

现在,我们可以开始使用 DataWeave 语言进行脚本编写了。

示例

以下是将两个字符串连接成一个字符串的简单示例:

Transform Message Component

上面的 DataWeave 脚本具有一个键值对({ myString: ("hello" ++ "World") }),它将两个字符串连接成一个字符串。

广告