Mule Mongo查询日期范围

时间:2017-07-28 16:15:30

标签: mongodb mule

来自Mongo我可以使用例如db.getCollection('events').find({ whenOccurred: {$gte: new Date(ISODate().getTime() - 1000 * 60 * 60 * 24 * 120) }})

之类的示例检索特定时间以来的文档

但是从Mule,我无法找到构建DW字段的方法,以便在日期字段上使用$gte运算符。

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

您可以使用org.bson.Document check this从java驱动程序使用此查询获取结果,以获取更多详细信息。您需要使用java组件来执行此操作。在我的观察中,您不能直接使用带有日期值的$ gte,因为它在monodb查询中。以下是我尝试过但不会返回任何结果。

<?xml version="1.0" encoding="UTF-8"?>

    <mule xmlns:json="http://www.mulesoft.org/schema/mule/json" 
        xmlns:http="http://www.mulesoft.org/schema/mule/http" 
        xmlns:mongo="http://www.mulesoft.org/schema/mule/mongo" 
        xmlns="http://www.mulesoft.org/schema/mule/core" 
        xmlns:doc="http://www.mulesoft.org/schema/mule/documentation"
        xmlns:spring="http://www.springframework.org/schema/beans" 
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://www.springframework.org/schema/beans 
        http://www.springframework.org/schema/beans/spring-beans-current.xsd
        http://www.mulesoft.org/schema/mule/core 
        http://www.mulesoft.org/schema/mule/core/current/mule.xsd
        http://www.mulesoft.org/schema/mule/http 
        http://www.mulesoft.org/schema/mule/http/current/mule-http.xsd
        http://www.mulesoft.org/schema/mule/mongo 
        http://www.mulesoft.org/schema/mule/mongo/current/mule-mongo.xsd
        http://www.mulesoft.org/schema/mule/json 
        http://www.mulesoft.org/schema/mule/json/current/mule-json.xsd">
        <http:listener-config name="HTTP_Listener_Configuration" host="0.0.0.0" port="8081" doc:name="HTTP Listener Configuration"/>
        <mongo:config name="Mongo_DB" username="mmcuser" password="mmcmongo" database="testdb" doc:name="Mongo DB"/>

        <flow name="mongodb-testFlow">
            <http:listener config-ref="HTTP_Listener_Configuration" path="/mongodq" doc:name="HTTP"/>
            <set-payload value="#[string:{&quot;from&quot;:{&quot;$gte&quot;:&quot;2016-04-07T05:30:00.000Z&quot;}}]" doc:name="Set Payload"/>
            <json:object-to-json-transformer doc:name="Object to JSON"/>
            <mongo:json-to-dbobject doc:name="Mongo DB"/>
            <mongo:find-objects config-ref="Mongo_DB" collection="appointment" query-ref="#[payload]" doc:name="Mongo DB"/>
            <logger level="INFO" doc:name="Logger"/>
        </flow>
    </mule>