Mule Cache作用域如何使Mule Cache因没有DB输出有效负载而无效

Mule Cache作用域如何使Mule Cache因没有DB输出有效负载而无效,mule,Mule,我们希望在mule缓存范围内使用DB查询 希望将DB查询的输出存储在缓存中以保存DB查询行程 如果DB查询没有给出任何输出,或者负载为空,我们就不想保存在mule缓存中 如何使空有效负载条目的缓存无效 谢谢。这个问题的答案在mule论坛上 <ee:cache cachingStrategy-ref="Caching_Strategy" filterExpression="# [payload != 'testData']" doc:name="Cache">

我们希望在mule缓存范围内使用DB查询

希望将DB查询的输出存储在缓存中以保存DB查询行程

如果DB查询没有给出任何输出,或者负载为空,我们就不想保存在mule缓存中

如何使空有效负载条目的缓存无效


谢谢。

这个问题的答案在mule论坛上


 <ee:cache cachingStrategy-ref="Caching_Strategy" filterExpression="#
   [payload 
      != 'testData']" doc:name="Cache">
         <db:select config-ref="DBConfig" fetchSize="100" 
            doc:name="Database">
             <db:dynamic-query><![CDATA[select * from STUDENT where 
                 student_id = 'TEST']]></db:dynamic-query>
                    </db:select>
                      <choice doc:name="Choice">
                          <when expression="#[message.payload.size() == 0]">
                 <logger message="Payload is empty" level="INFO" 
                   doc:name="Logger"/>
                 <dw:transform-message doc:name="Transform Message">
                     <dw:set-payload><![CDATA[%dw 1.0
                      %output application/json
                        ---
                    payload]]></dw:set-payload>
                 </dw:transform-message>
             </when>
             <otherwise>
                 <object-to-string-transformer doc:name="Object to String"/>
           </otherwise>
       </choice>
       <logger message="After Choice" level="INFO" doc:name="Logger"/>
   </ee:cache>