8.3. 将源数据项映射到目标数据项
展开 Source 和 Target 面板上左边的所有项目,并在映射面板中的右侧展开。
从 Source 面板中拖动数据项目,并将其保存在 Target 面板中对应的数据项。
例如,将
customerNum数据项目从 Source 面板中拖动,并将其放到 Target 面板中的custId数据项目。
映射会出现在映射面板中,Source 和 Target 数据项的详情将显示在详细信息窗格中。
继续将源数据项目拖放到对应的目标数据项目,直到您完成了所有基本映射。
在
初学者示例中,要映射的剩余数据项是:Expand 源 目标 orderNumorderIdstatuspriorityiditemIdpricecostquantityamount注意您可以将集合(包含列表或集合的数据收集项目)映射到非集合数据项,反之亦然,但您无法将集合映射到其他集合。
在 Source 和 Target 面板中点
来快速确定所有数据项是否已映射。
只有未映射的数据项目才会在 Source 和 Target 面板中列出。
在
初学者示例中,其余的未映射 目标 属性是批准代码和原始卷。点击 blueprint.xml 选项卡返回路由的图形显示:
-
点 File
Save。
在创建转换测试后,您可以在转换文件上运行 JUnit 测试。详情请查看 第 8.4 节 “创建转换测试文件并运行 JUnit 测试”。此时您会看到此输出,在 Console 视图中看到以下输出:
对于源 XML 数据:
<?xml version="1.0" encoding="UTF-8"?>
<ABCOrder xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:java="http://java.sun.com">
<header>
<status>GOLD</status>
<customer-num>ACME-123</customer-num>
<order-num>ORDER1</order-num>
</header>
<order-items>
<item id="PICKLE">
<price>2.25</price>
<quantity>1000</quantity>
</item>
<item id="BANANA">
<price>1.25</price>
<quantity>400</quantity>
</item>
</order-items>
</ABCOrder>
对于目标 JSON 数据:
{"custId":"ACME-123","priority":"GOLD","orderId":"ORDER1","lineItems":[{"itemId":"PICKLE",
"amount":1000,"cost":2.25},{"itemId":"BANANA","amount":400,"cost":1.25