我们可以计算在Mule中通过浏览器传递的查询参数的数量

时间:2016-03-31 10:25:45

标签: database stored-procedures mule esb query-parameters

我正在尝试编写一个动态工作的存储过程。例如,如果我将三个查询参数从浏览器传递给流,则应将其分配给存储过程,并且它应仅检索数据库中仅传递值的值。 (注意:我在我的存储过程中使用select查询)。我应该能够传递n个查询参数。任何人都可以帮助我。

2 个答案:

答案 0 :(得分:0)

查询参数可以作为Map使用,因此您只需调用.size():

message.inboundProperties['http.query.params'].size()

答案 1 :(得分:0)

有关如何获取Query参数键名的查询:

使用以下表达式获取第一个查询参数键名。根据查询参数编号更改索引值。

#[message.inboundProperties.'http.query.params'.keySet().toArray()[0]]

请参阅以下示例代码,该代码迭代查询参数并将每个查询参数键名称存储到变量中,然后将其打印在logger中。

<foreach collection="#[message.inboundProperties.'http.query.params'.keySet()]" doc:name="For Each"> <set-variable variableName="QueryPramKey" value="#[payload]" doc:name="Variable"/> <logger message="--- Query param kay names: #[flowVars.QueryPramKey]" level="INFO" doc:name="Logger"/>