Oracle同步后的数据number类型数据变为了字母,如数字1变为了AA==
-
原因:Number类型读取后转换为bytes类型
- 解决方法1:需要将数据从base64编码的字符串"手动"转换为 BigDecimal :
BigDecimal bigDecimal = new BigDecimal(
new BigInteger(Base64.getDecoder().decode(" BfXhAA ==")));
- 解决方案2:修改配置文件:
/extusr/kafka-connect/confluent-6.0.1/etc/kafka/testbyte-hainan-kafka-source.properties
将需要转换的字段直接转换,类型有[INT8,INT16, INT32, INT64, FLOAT32, FLOAT64, BOOLEAN, STRING]这几种
亲测方案2更方便快捷