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

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));
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值