【问题标题】:Read .csv file and inserting values into MySQL db in mulesoft在 mulesoft 中读取 .csv 文件并将值插入 MySQL db
【发布时间】:2014-06-15 07:42:05
【问题描述】:

我正在尝试从本地目录读取 .csv 文件并将值插入 Mysql 数据库。请向我推荐任何使用 Mulesoft 的示例。

【问题讨论】:

  • 抱歉,这个 mulesoft 是新手,我正在尝试使用文件进行数据库插入示例。

标签: mysql database mule mule-studio


【解决方案1】:

你使用这个流程

<flow name="apdev-americanFlow">
    <http:listener config-ref="HTTP_Listener_Configuration" path="/flights" 
doc:name="HTTP"/>
    <db:select config-ref="MySQL_Configuration" doc:name="Database">
        <db:parameterized-query><![CDATA[SELECT *
FROM american]]></db:parameterized-query>
    </db:select>
    <dw:transform-message doc:name="Transform Message" 
metadata:id="6aa1324d-4ae4-4a42-9aeb-18da081f5cb1">
        <dw:input-payload doc:sample="sample_data\list_map.dwl"/>
        <dw:set-payload><![CDATA[%dw 1.0
%output application/json
---
payload map ((payload01 , indexOfPayload01) -> {
ID: payload01.ID,
code: payload01.code1 ++ payload01.code2,
price: payload01.price as :number,
departureDate: payload01.takeOffDate as :string,
destination: payload01.toAirport,
emptySeats: payload01.seatsAvailable as :number,
plane: {
    type: payload01.planeType,
    totalSeats: payload01.totalSeats as :number
}
})]]></dw:set-payload>
    </dw:transform-message>
</flow>

【讨论】:

    【解决方案2】:

    我已尝试实施此方案。但最终得到了别的东西。看看对你有没有帮助。

     <flow name="WriteToDB">
        <file:inbound-endpoint path="${file_path}" moveToPattern="#[StringUtils.substringBeforeLast(message.inboundProperties.originalFilename,&quot;.txt&quot;)].bkp" moveToDirectory="${file_path}" connector-ref="FileRead" pollingFrequency="30000" responseTimeout="10000" doc:name="File">
            <file:filename-regex-filter pattern=".*\.txt$" caseSensitive="true"/>
        </file:inbound-endpoint>
        <object-to-string-transformer doc:name="Object to String"/>
        <logger message="Starting Split--------#[StringUtils.substringBeforeLast(message.inboundProperties.originalFilename,&quot;.txt&quot;)].bkp  ----#[message.inboundProperties.originalFilename]" level="INFO" doc:name="Logger"/>
        <splitter expression="#[StringUtils.split(message.payload, '\n\r')]" doc:name="Splitter"/>
        <expression-component doc:name="Expression"><![CDATA[#[StringUtils.split(message.payload, '\n\r')]]]></expression-component>
        <logger message="Split done #[message.payload]" level="INFO" doc:name="Logger"/>
    </flow>
    

    【讨论】:

      【解决方案3】:

      【讨论】:

        猜你喜欢
        • 2016-04-07
        • 2020-09-09
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-12-26
        • 2021-09-13
        • 2015-06-02
        相关资源
        最近更新 更多