SpringXD JSON解析器到Oracle DB

时间:2014-10-30 19:21:08

标签: json spring oracle spring-xd

我正在尝试使用SpringXD将一些JSON指标数据流式传输到Oracle数据库。

我在这里使用这个例子:SpringXD Example

正在进行Http调用:EarthquakeJsonExample

我的shell cmd。

 stream create earthData --definition "trigger|usgs| jdbc --columns='mag,place,time,updated,tz,url,felt,cdi,mni,alert,tsunami,status,sig,net,code,ids,souces,types,nst,dmin,rms,gap,magnitude_type' --driverClassName=driver --username=username --password --url=url --tableName=Test_Table" --deploy

我想将此JSON响应的属性部分捕获到给定的表列中。我得到它,它没有给我一个哈希错误,而只是将一堆空值存入列。

我认为我的问题是解析JSON本身。因为属性实际上在Features数组中。 SpringXD可以为我开箱即用,还是需要编写自定义处理器?

以下是成功获取cmd后数据库的外观。

What Is put into my database

有什么建议吗?我是以这种方式解析JSON的新手,我不确定如何使用SpringXD本身找到更多文档或示例。

以下是文档的引用:SpringXD Doc

1 个答案:

答案 0 :(得分:2)

JDBC接收器中的转换器需要一个可以转换为键/值映射的简单文档。您需要在上游添加变换器,可能在您的usgs处理器或甚至是单独的处理器中。您可以使用#jsonPath表达式来提取属性键并使其成为有效负载。