Java中的JSON(带JSON.simple)
我试图使用JSON.simple创建一个JSON文件,以满足服务器负载的要求 这些要求是:Java中的JSON(带JSON.simple),java,json,Java,Json,我试图使用JSON.simple创建一个JSON文件,以满足服务器负载的要求 这些要求是: { "agent": { "name": "String", "version": 1 }, "username": "String", "password": "String", "clientToken": "String" } 而且: { "accessToken": "valid accessToken", "cli
{
"agent": {
"name": "String",
"version": 1
},
"username": "String",
"password": "String",
"clientToken": "String"
}
而且:
{
"accessToken": "valid accessToken",
"clientToken": "client identifier"
"selectedProfile": {
"id": "profile identifier",
"name": "String"
}
}
我看过一些帖子,试图找出如何实现这一点,但我就是做不到。感谢所有帮助:首先创建一个与json字符串匹配的对象。然后,您可以使用一些json解析器(如或)来读取值。例如,第一个json包含一个内部对象代理。因此,我们可以首先为它创建一个JavaVO,其字段名与json字符串匹配。创建第二个对象来保存所有内容。所以它可以理解为
import java.io.IOException;
import com.fasterxml.jackson.core.JsonParseException;
import com.fasterxml.jackson.databind.JsonMappingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.google.gson.Gson;
class Agent {
private String name;
private int version;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getVersion() {
return version;
}
public void setVersion(int version) {
this.version = version;
}
@Override
public String toString() {
return "Agent [name=" + name + ", version=" + version + "]";
}
}
class User {
private Agent agent;
private String username;
private String password;
private String clientToken;
public Agent getAgent() {
return agent;
}
public void setAgent(Agent agent) {
this.agent = agent;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String getClientToken() {
return clientToken;
}
public void setClientToken(String clientToken) {
this.clientToken = clientToken;
}
@Override
public String toString() {
return "User [agent=" + agent + ", username=" + username
+ ", password=" + password + ", clientToken=" + clientToken
+ "]";
}
}
public class Sample {
public static void main(String[] args) {
String json = "{\"agent\":{\"name\":\"String\",\"version\":1},\"username\":\"String\",\"password\":\"String\",\"clientToken\":\"String\"}";
//Gson way
Gson gson = new Gson();
User user = gson.fromJson(json, User.class);
System.out.println(user);
//Jackson way
ObjectMapper mapper = new ObjectMapper();
try {
user = mapper.readValue(json, User.class);
} catch (JsonParseException e) {
e.printStackTrace();
} catch (JsonMappingException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
System.out.println(user);
}
}
转到json.org学习json语法。只需要5-10分钟。然后了解JSON对象本质上等同于Java映射,JSON数组非常类似于Java列表。第二个代码段不是有效的JSON,您可以查看它,只是其中的一部分。先来点。他还有一个物体需要绘制。。他可以从这个例子中学习;酷,我可以试试!