zk中文乱码问题 zookeeper事件监听

  之前讲了怎么把数据导入到zookeeper(见zookeeper事件监听),本机win10的zookeeper展示没问题,到了linux上就出现乱码了:

<<<2018-09-29 09:14:54,905| DEBUG | ZKUtil.getServiceAccessCompany() invoke getServiceAccessCompany !{"11111":{"mchId":"11111","mchName":"�㶫ʡ��˾","mchType":"11
1","spId":"AAAAA","key":"BBBBB","remark":"���ǶԵ�"},"22222":{"mchId":"22222","mchName":"����ʡ��˾","mchType":"22","spId":"CCCCC","key"::
"DDDDD","remark":"���ݵ���zk��"},"33333":{"mchId":"33333","mchName":"����","mchType":"33","spId":"EEEEE","key":"FFFFF","remark":"����"}} 
| com.wlf.utils.ZKUtil>>>

  想了一下,数据是作为json格式导入到zk的,json说白了就是字符串,那么是否我要指定一下编码格式?试了下:

companyMap.put(sac.getMchId(), getJson(sac).getBytes("utf-8"));

  结果报错依旧。那么我只针对中文的字段来指定编码格式呢?再试下:

sac.setMchName(new String("广东省公司".getBytes("utf-8"), "utf-8"));

  也不行。把两者结合起来,都指定,这次可以了:

<<<2018-09-29 11:58:02,553| DEBUG | ZKUtil.getServiceAccessCompany() invoke getServiceAccessCompany !{"11111":{"mchId":"11111","mchName":"广东省公司","mchType":"11","spId":"AAAAA","key":"BBBBB","remark":" "},"22222":{"mchId":"22222","mchName":"江苏省公司","mchType":"22","spId":"CCCCC","key":"DDDDD","remark":" "},"33333":{"mchId":"33333","mchName":"北京","mchType":"33","spId":"EEEEE","key":"FFFFF","remark":" "}} | com.wlf.utils.ZKUtil>>>

猜你喜欢

转载自www.cnblogs.com/wuxun1997/p/9723176.html