A JSONObject text must begin with ‘{‘报错解决
找了好久问题, 问题从reide取得值是object转为对象的时候报错了 在解释json的时候出现这个错误,直接看错误意思是解析的字符串不是以{开头的字符串。就是说不合法的json字符串。
报错的代码
Object o = redisUtil.getnode(nodeid); ObjectMapper objectMapper = new ObjectMapper(); String json = objectMapper.writeValueAsString(o); //NodeData 是自己定义的实体 NodeData nodeData = JSONUtil.toBean(json, NodeData.class); nodeVO.setStateId(nodeData.getStateId()); nodeVO.setValue(nodeData.getValue());
报错
A JSONObject text must begin with {
修改后的代码
Object o = redisUtil.getnode(nodeid);
ObjectMapper objectMapper = new ObjectMapper();
String json = objectMapper.writeValueAsString(o);
int i = json.indexOf("{");
json = json.substring(i);
int p = json.lastIndexOf("}");
json = json.substring(i - 1, p + 1);
json = json.replaceAll("\\", "");
NodeData nodeData = JSONUtil.toBean(json, NodeData.class);
nodeVO.setStateId(nodeData.getStateId());
nodeVO.setValue(nodeData.getValue());
下一篇:
python继承,看这篇就够了
