Pour obtenir la sortie JSON souhaitée, vos classes sont structurées correctement. ValueData représente l'objet principal contenant une liste de ValueItems. Chaque objet ValueItems représente une entrée dans le tableau d'informations.
Pour convertir l'objet ValueData en JSON, vous devez utiliser la bibliothèque Jackson :
<dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind</artifactId> <version>2.13.3</version> </dependency>
import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.ObjectWriter; public static void main(String[] args) throws Exception { // Create Java object ValueData valueData = ... ; // Create and initialize the ValueData object ObjectWriter ow = new ObjectMapper().writer().withDefaultPrettyPrinter(); String json = ow.writeValueAsString(valueData); System.out.println(json); }
La méthode writeValueAsString génère la chaîne JSON au format souhaité :
{ "information": [{ "timestamp": "xxxx", "feature": "xxxx", "ean": 1234, "data": "xxxx" }, { "timestamp": "yyy", "feature": "yyy", "ean": 12345, "data": "yyy" }] }
Cette sortie correspond le format JSON souhaité spécifié dans votre question.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!