sql >> Databasteknik >  >> RDS >> PostgreSQL

Hur man läser REST-tjänst som returnerar JSON-objekt och lagrar detsamma i PostgreSQL med Mule ESB, Mule Studio

Eftersom du vill lagra hela JSON behöver du inte deserialisera den som ett objekt:jag föreslår att du helt enkelt omvandlar den HTTP-strömmade nyttolasten till en java.lang.String och infoga den som den är i DB.

Detta skulle göras så här:

<jdbc:postgresql-data-source name="PostgreSQL_Data_Source"
    user="username" password="pwd" url="jdbc:postgresql://localhost:5432/TestDB"
    transactionIsolation="UNSPECIFIED" doc:name="PostgreSQL Data Source" />

<jdbc:connector name="PostgreSQL_Connector" dataSource-ref="PostgreSQL_Data_Source"
    validateConnections="true" queryTimeout="-1" pollingFrequency="0"
    doc:name="Database">
    <jdbc:query key="InsertRecord"
        value="INSERT INTO &quot;AnotherJSonTable&quot;(&quot;StoreJsonObject&quot;) VALUES (CAST(#[message.payload] AS json))" />
</jdbc:connector>

<flow name="testRestFlow1" doc:name="testRestFlow1">
    <http:inbound-endpoint exchange-pattern="request-response"
        address="http://localhost:8082/index.html" doc:name="HTTP" />
    <http:rest-service-component httpMethod="GET"
        serviceUrl="http://localhost:35798/RestServiceImpl.svc/json/567" />
    <object-to-string-transformer />
    <jdbc:outbound-endpoint exchange-pattern="one-way"
        queryKey="InsertRecord" queryTimeout="-1" connector-ref="PostgreSQL_Connector"
        doc:name="Database" />
</flow>



  1. PHP 7.2.2 + mysql 8.0 PDO ger:autentiseringsmetod okänd för klienten [caching_sha2_password]

  2. LazyInitializationException försöker få lazy initierad instans

  3. datetime till totalminute i sql

  4. Måste databasens primärnycklar vara heltal?