喷射多于一个xml输入的可能性?

时间:2013-03-14 05:54:12

标签: code-generation eclipse-m2t-jet

我们可以向jet(java发射器模板)提供超过一个xml输入吗? 如果可以的话,请举个例子。

1 个答案:

答案 0 :(得分:0)

您无法直接执行此操作,但可以使用多种技术将多个XML指定为输入。

您可以在另一个内部命名一个XML文件,或者创建第三个XML文件,该文件只是命名两个输入(或者您拥有多个输入)。假设您有一个在输入XML中命名为JET的XML文件:

<inputs>
   <input name="...full file name here..." />
<inputs>

您可以加载此文件以便在JET中使用,如下所示:

<c:load url="{/inputs/input/@name}" var="root"/>

load标记读取文件(默认为XML,但可以输入其他类型。)并通过您指定的变量名称(在本例中为“root”)使其内容可用。通常,url属性需要一个String值作为文件名,但由于我们在模型中使用了一个属性,因此我们使用花括号和xpath表示法来指示要用作文件名的属性值。

加载文件后,您可以访问其内容。例如,如果该XML文件中的根元素是,并且它具有名为company的属性,那么您的属性可以使用c:get

访问该属性值
<c:get select="$root/policies/@company" />

您可以根据需要加载任意数量的文件。只需使用不同的变量名称即可引用每个已解析文件的根目录。

您可能会使用命名约定更复杂并将多个文件存储在同一目录中。然后,您只需指定一个目录路径并派生所有输入的文件名。