Java 不使用包装器类解析JSON的特定字段
Java对象:Java 不使用包装器类解析JSON的特定字段,java,json,resttemplate,jackson-databind,Java,Json,Resttemplate,Jackson Databind,Java对象: public class Foo { @JsonProperty("name") private String name; @JsonProperty("surname") private String surname; // getters + setters } JSON: API调用: return restTemplate.getForEntity(requestUrl, Foo[].class).getBody(); 是否可以在不创建额外包装器类的情况下
public class Foo {
@JsonProperty("name")
private String name;
@JsonProperty("surname")
private String surname;
// getters + setters
}
JSON:
API调用:
return restTemplate.getForEntity(requestUrl, Foo[].class).getBody();
是否可以在不创建额外包装器类的情况下解析“数据”数组?我尝试在Java类的顶部添加@JsonRootName(“数据”)
注释,但没有成功。您可以尝试:
import org.json.*;
JSONObject obj = new JSONObject(" .... ");
String name = obj.getJSONObject("data").getString("name");
看起来像是使用了Jackson,而不是org.jsonGson可以很容易地做到这一点。这看起来更复杂-添加数百个类进行解析不是我想要的数百个?这是一个TypeAdapterFactory,Jackson本身就有自定义反序列化功能。Java是面向对象的,那么您对类有什么看法呢?
import org.json.*;
JSONObject obj = new JSONObject(" .... ");
String name = obj.getJSONObject("data").getString("name");