mule怎么使用类似mybatis的<if><foreach>标签

问题遇到的现象和发生背景

最近使用mule的esb项目,其中会用到类似mybatis的 if,foreach 标签

问题相关代码,请勿粘贴截图
<flow name="mzghxxcx">
        <http:listener config-ref="HTTP_Listener_Configuration" path="/mzghxxcx" doc:name="HTTP"/>
        <json:json-to-object-transformer returnClass="java.util.Map" doc:name="JSON to Object" />
        <set-variable variableName="parmeterMap" value="#[payload]" doc:name="Variable"/>
        <set-variable variableName="code" value="#[payload.get('code')]" doc:name="Variable"/>
     <set-variable variableName="name" value="#[payload.get('name')]" doc:name="Variable"/>
        <db:select config-ref="Oracle_Configuration" doc:name="Database">
            <db:dynamic-query><![CDATA[
                  select a.*  from tab a where a.code in ('#[code]')
                                <if test=”xxx != null and xxx != ''“>
                                  and name = '#[name]'
                                            </if>
             ]]></db:dynamic-query>
        </db:select>
        <json:object-to-json-transformer doc:name="Object to JSON"/>
        <set-payload value="#[payload]" doc:name="Set Payload"/>
    </flow> 
运行结果及报错内容
我的解答思路和尝试过的方法
我想要达到的结果

我希望能查询得到 tab 表不同code的数据和根据name是否有数值来进行查询数据

看下我的博客