Java 如何从JSON响应中获取具体类?
我有一个基本的JAVA类:Java 如何从JSON响应中获取具体类?,java,json,jackson,Java,Json,Jackson,我有一个基本的JAVA类: public class BasicDefinition { private Integer id = null; private String name = null; @JsonProperty("ID") public Integer getId() { return id; } public void setId(Integer id) { this.id = id;
public class BasicDefinition {
private Integer id = null;
private String name = null;
@JsonProperty("ID")
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
@JsonProperty("Name")
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
我试图使用Jackson解析JAVA服务器中的web服务响应,服务响应与我的类匹配,我使用以下命令从服务器获取结果:
String resultString = EntityUtils.toString(entity);
结果字符串为:
{GetBasicEntityDefinitionsResult={ID=1, Name=Some Name}}
如何转换字符串以返回我的类?我的函数获取T作为需要返回的类。在这种情况下,T是基本定义,您可以这样做
ObjectMapper mapper = new ObjectMapper();
String jsonInString = "{ID=1, Name=Some Name}";
BasicDefinition bd = mapper.readValue(jsonInString, BasicDefinition.class);
使用jackson依赖项
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.6.3</version>
</dependency>
com.fasterxml.jackson.core
杰克逊数据绑定
2.6.3
ObjectMapper mapper=新的ObjectMapper();
字符串jsonInString=“{'name':'xyz'}”
//从文件到对象的JSON
className obj=mapper.readValue(新文件(“c:\File.json”)、className.class) mapper.readValue(json,BasicDefinition.class),其中mapper=newObjectMapper(){GetBasicEntityDefinitionsResult={ID=1,Name=Some Name}}}不是json。发布前是否测试了代码?你确定不会有例外吗
{ID=1,Name=Some Name}
不是有效的JSON。我以前没有测试过该JSON,我只接受了主题作者发布的JSON。