报错信息
使用 JSON.parseObject 把前端传来的json序列化字符串转换成Java对象时:
syntax error, expect {, actual string, pos 0, fastjson-version 1.2.73
解决办法
debug下,msgStr为接收到的初始字符串,可以看出里面添加了java的转义字符 “\” 和前后各多了一个 " 。我们可以通过JSON.parse方法,把带有转义字符的字符串格式化成我们想要的样子,如下文中字符串str所示,里面去掉了转义字符。
String msgStr = msg.text();
String str = JSON.parse(msgStr).toString();
完整代码
String msgStr = msg.text();
User user = JsonUtil.Json2Pojo(msgStr, User.class);
public static <T> T Json2Pojo(String str, Class<T> clazz) {
return JSON.parseObject(JSON.parse(str).toString(), clazz);
}
版权声明:本文为qq_45369827原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。