在JSON中转换列表,然后使用Java操作JSON并添加嵌套节点



我有一个对象列表:

List<ScuolaEntity> result = scuolaService.getAllScuoleEntity();

我想将列表转换为json对象,我已经尝试过gson, JSONObject甚至JsonNode,但我找不到一种方法来深入操作这个json。

这是实际的json:

[
{
"codiceMeccanografico": "RMAT123456",
"anno": 2022,
"sezione": "A",
"nome": "PIETRO",
"cognome": "BUCCIANTI",
"classe": {
"anno": 2022,
"sezione": "A"
}
},
{
"codiceMeccanografico": "RMAT123456",
"anno": 2022,
"sezione": "A",
"nome": "LEONARDO",
"cognome": "FANTE",
"classe": {
"anno": 2022,
"sezione": "A",
"ubicazione": "PIANO TERRA"
}
}
]

这就是我想要实现的:

{
"scuola": {
"codiceMeccanografico": "RMAT123456",
"classe": {
"anno": 2022,
"sezione": "A",
"studenti": [
{
"nome": "PIETRO",
"cognome": "BUCCIANTI"
},
{
"nome": "MARIO",
"cognome": "ROSSI"
}
]
}
}
}

您可以创建具有您想要的结构的类,并将值映射到其中,例如

public class Scuola {
private String codiceMeccanografico;
private Classe classe;
}
public class Classe {
private int anno;
private String sezione;
private List<Studente> studenti;
}
public class Studente {
private String nome;
private String cognome;
}

那么做:

Scuola map(ScuolaEntity scuolaEntity) {
Scuola scuola = new Scuola();
scuola.setCodiceMeccanografico(scuolaEntity.getCodiceMeccanografico());
Classe classe = new Classe();
classe.setAnno(scuolaEntity.getAnno());
// etc.
scuola.setClasse(classe);
// etc.
return scuola;
}

相关内容

  • 没有找到相关文章