在Dataweave Mule中执行Null检查的更好方法

问题描述 投票:0回答:2

我通常在Dataweave中执行空检查,如下所示,

{有效负载!= null否则为null}

但是我的一位同事建议我使用默认的{}来减少空检查,如下所示,

%var x = payload default {}
{
payload.variableA
}

因为它提高了可读性,尤其是在复杂的转换中。

但是这样做真的是一个好习惯吗?它会引起任何问题,例如创建不必要的空对象吗?

dataweave mulesoft
2个回答
0
投票

首先,payload.variableA应该在有效负载为null时返回null。您无需对此进行检查。尝试访问null对象上的键会返回null,而不是抛出可能习惯的null指针异常之类的东西。

您可以将default视为dataweave的空偶运算符。您可以将其设置为空对象,默认值等。

https://docs.mulesoft.com/mule-runtime/4.3/dataweave-cookbook-defaults

默认操作符在DW1和DW2中的行为相同。

© www.soinside.com 2019 - 2024. All rights reserved.