处理json异常问题,由于发送kafka消息是一个字符串,等到消费时json字符串会有多个““引号,故需要先处理json再转对象

发送一个正确的json对象

发送kafka消息也是一个json传,也没问题

等到消费kafka时,也能接收到一个json字符串但是会多一个 " 引号, 就会导致json转对象失败所以需要先去除 开通和结尾的 " 引号

去除后的json 就是一个正常的json,才能转换对象

处理 " 引号的代码逻辑

复制代码
    @KafkaListener(topics = {"brok.............1"},containerFactory = "kafkaListenerContainerFactory")
//    @Transactional(rollbackOn = Exception.class)
    public void receive(String message) throws JsonProcessingException, ParseException, InterruptedException {
        ObjectMapper objectMapper=new ObjectMapper();
        objectMapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
        try {
            message = message.replace("\\", "");
            String startStr = message.substring(0,1);
            // 去除开头 " 引号
            if( "\"".equals( startStr )){
                message = message.substring(1);
            }
            // 去除结尾 " 引号
            String lastStr = message.substring(message.length()-1,message.length());
            if( "\"".equals( lastStr )){
                message = message.substring(0, message.length() - 1);
            }
            System.out.println( message );
            MessageBean messageBean = JSON.parseObject(message, MessageBean.class);
            consumerService.consumer(messageBean);
        }catch (Exception e){
            e.printStackTrace();
        }
    }
相关推荐
PixelBai4 小时前
JSON查看器实际应用场景案例
json
田里的水稻5 小时前
EP_XML\JSON配置文件和YAML
xml·运维·人工智能·机器人·自动驾驶·json
添砖java_8575 小时前
基于RabbitMQ实现的轻量队列测试报告
分布式·rabbitmq
Zhu7586 小时前
使用腾讯CNB构建Hadoop定制容器镜像
大数据·hadoop·分布式
TTBIGDATA7 小时前
【Ambari Plus】13.Spark 安装
大数据·hadoop·分布式·spark·ambari·sqoop·ambari plus
sunxunyong8 小时前
Hadoop租户创建
大数据·hadoop·分布式
得物技术9 小时前
得物 OceanBase 落地实践
数据库·分布式·架构
heimeiyingwang11 小时前
【架构实战】分布式ID生成:从自增ID到雪花算法
分布式·架构
whaledown11 小时前
互联网大厂Java求职面试三轮提问详解(涵盖Spring Boot、微服务、Kafka等核心技术)
java·jvm·数据库·spring boot·微服务·面试·kafka
耍酷的魔镜21 小时前
核心设计理念:5W2H、JSON-LD 与通用知识图谱
人工智能·json·知识图谱