JSON in Java
Mit Jackson
1. Abhängigkeit von Jackson hinzufügen
Um Jackson zu verwenden, müssen Sie die Abhängigkeiten zu Ihrem Projekt hinzufügen. Wenn Sie Maven verwenden, fügen Sie das Folgende in Ihre `pom.xml` Datei ein:
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.13.0</version>
</dependency>
2. Erstellen Sie ein Java-Objekt
Definieren Sie eine Java-Klasse, die Sie in JSON serialisieren möchten. Zum Beispiel:le:
public class User {
private String name;
private int age;
// Constructors, getters, and setters
}
3. Java-Objekt in JSON serialisieren
Verwenden Sie "ObjectMapper", um das Java-Objekt in einen JSON-String zu serialisieren.
import com.fasterxml.jackson.databind.ObjectMapper;
public class JsonExample {
public static void main(String[] args) throws Exception {
User user = new User("John Doe", 30);
ObjectMapper mapper = new ObjectMapper();
// Convert object to JSON string
String json = mapper.writeValueAsString(user);
System.out.println(json);
}
}
Verwendung von Gson
1. Abhängigkeit von Gson hinzufügen
Um Gson zu verwenden, fügen Sie dessen Abhängigkeit zu Ihrem Projekt hinzu. Für Maven, fügen Sie dies in Ihre `pom.xml` ein
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>2.8.8</version>
</dependency>
2. Erstellen Sie ein Java-Objekt
Definieren Sie eine Java-Klasse wie oben für das Jackson-Beispiel gezeigt.
3. Java-Objekt in JSON serialisieren
Verwenden Sie `Gson`, um das Java-Objekt in einen JSON-String zu konvertieren:
import com.google.gson.Gson;
public class JsonExample {
public static void main(String[] args) {
User user = new User("John Doe", 30);
Gson gson = new Gson();
// Convert object to JSON string
String json = gson.toJson(user);
System.out.println(json);
}
}
Sowohl Jackson als auch die Gson-Bibliotheken bieten fortgeschrittenere Funktionen wie das Pretty-Printing von JSON, benutzerdefinierte Serializer/Deserializer und die Verarbeitung komplexer Datentypen. Die Wahl zwischen Jackson und Gson hängt oft von persönlichen Vorlieben und spezifischen Projektanforderungen ab.
https://github.com/FasterXML/jackson
https://github.com/google/gson