欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

java json轉(zhuǎn)一對多

劉柏宏1年前8瀏覽0評論

Java中使用JSON進行數(shù)據(jù)傳輸已經(jīng)成為了一種常見的方式。在一些實際的項目中,涉及到的數(shù)據(jù)并不是單一的對象,而是一對多的情況。那么在Java中如何將JSON進行一對多的轉(zhuǎn)換呢?

// 假設(shè)有如下JSON數(shù)據(jù)
{
"name": "張三",
"hobbies": [
{
"id": 1,
"name": "看書"
},
{
"id": 2,
"name": "打游戲"
}
]
}
// 定義Java類
public class Person {
private String name;
private Listhobbies;
// getter和setter方法省略
}
public class Hobby {
private int id;
private String name;
// getter和setter方法省略
}
// 解析JSON數(shù)據(jù)
String jsonStr = "{\"name\":\"張三\",\"hobbies\":[{\"id\":1,\"name\":\"看書\"},{\"id\":2,\"name\":\"打游戲\"}]}";
JSONObject jsonObj = JSONObject.parseObject(jsonStr);
Person person = new Person();
person.setName(jsonObj.getString("name"));
JSONArray hobbiesJsonArray = jsonObj.getJSONArray("hobbies");
Listhobbies = new ArrayList<>();
for (int i = 0; i< hobbiesJsonArray.size(); i++) {
JSONObject hobbyJson = hobbiesJsonArray.getJSONObject(i);
Hobby hobby = new Hobby();
hobby.setId(hobbyJson.getIntValue("id"));
hobby.setName(hobbyJson.getString("name"));
hobbies.add(hobby);   
}
person.setHobbies(hobbies);

代碼中首先定義了一個Person類和Hobby類,Person類中包含了一個List集合類型的hobbies屬性。然后,解析JSON字符串,使用JSONArray獲取hobbies節(jié)點的子節(jié)點,循環(huán)將每個節(jié)點解析成Hobby對象并加入到List集合中,最后再將list集合設(shè)置給person的hobbies屬性。