用杰克逊解析简单的JSON

时间:2012-11-27 16:18:02

标签: android jackson

这是我的JSON:

{
  "i": 53691,
  "s": "Something" }

这是我的模特:

    public class Test() { 
private int i;
private String s;

    public setInt(int i){ this.i = i; }

    public setString(String s){ this.s = s; }

    // getters here

    }

这是我的服务器响应类:

  public class ServerResponse(){
  private Test;
 public void setTest(Test test){ this.test = test;}
 public Test getTest(){ return Test; } }

当我这样做时:

ObjectMapper mapper = new ObjectMapper();
mapper.readValue(json, serverResponse);

我得到一个例外:

  

JsonProcessingException:无法识别的字段“i”(类MyClass),而不是   标记为可忽略的

请建议。

2 个答案:

答案 0 :(得分:1)

您的JSON格式不正确。

应该是:

{
  "i": 53691,
  "s": "Something" 
}

您在字段之间缺少,

答案 1 :(得分:0)

你应该让你的班级成员公开,或者为他们提供获取者/设定者。

在你的情况下它应该是:

public void setI() { ... }
public void setS() { ... }

不是setInt()setString()

我个人更喜欢将它们公之于众 - 写作更短,更容易调试。