修改datax,Java获取mongo,Document转换成json,遇到的类型问题,用JsonWriterSettings解决

修改datax,Java获取mongo,Document转换成json,遇到的类型问题,用JsonWriterSettings解决,第1张

java $numberlong 解决方法
在修改datax插件的时候遇到了问题
问题:
我们存在mongo中带有数据类型,如图

我们直接将Document转json会带上类型

且在mongo-java-driver的jar包3.2.2的JsonWriterSettings就两种模式,没办法实现去掉
JsonWriterSettings没法builder

再把jar包更新到3.12.2后JsonWriterSettings可以builder

解决代码:

 JsonWriterSettings build = JsonWriterSettings.builder()
                                    .outputMode(JsonMode.EXTENDED)
                                    .int64Converter((Long value, StrictJsonWriter writer) ->writer.writeString(Long.toString(value)))
                                    .int32Converter((Integer value, StrictJsonWriter writer) ->writer.writeNumber(Integer.toString(value)))
                                    .doubleConverter((Double value,StrictJsonWriter writer)->writer.writeNumber(Double.toString(value)))
                                    .build();
String str = document.toJson(build);
record.addColumn(new StringColumn(str));

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/734042.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-27
下一篇 2022-04-27

发表评论

登录后才能评论

评论列表(0条)

保存