Java:
Arbeta med JSON

Hur man gör:

Låt oss kavla upp ärmarna och börja koda med JSON i Java.

För det första, du behöver ett JSON-behandlande bibliotek som Jackson eller Google Gson. Här kommer vi att använda Jackson, så lägg till detta beroende i din pom.xml:

<dependency>
    <groupId>com.fasterxml.jackson.core</groupId>
    <artifactId>jackson-databind</artifactId>
    <version>2.13.1</version>
</dependency>

Nu, låt oss serialisera (skriva) ett enkelt Java-objekt till JSON:

import com.fasterxml.jackson.databind.ObjectMapper;

public class JsonExample {
    public static void main(String[] args) {
        try {
            ObjectMapper mapper = new ObjectMapper();
            Person person = new Person("Alex", 30);
            String json = mapper.writeValueAsString(person);
            System.out.println(json);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

class Person {
    public String name;
    public int age;

    public Person(String name, int age) {
        this.name = name;
        this.age = age;
    }
}

Utmatningen bör vara:

{"name":"Alex","age":30}

Nu, för att avserialisera (läsa) JSON tillbaka till ett Java-objekt:

import com.fasterxml.jackson.databind.ObjectMapper;

public class JsonExample {
    public static void main(String[] args) {
        String json = "{\"name\":\"Alex\",\"age\":30}";
        try {
            ObjectMapper mapper = new ObjectMapper();
            Person person = mapper.readValue(json, Person.class);
            System.out.println(person.name + " är " + person.age + " år gammal.");
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

Utmatningen kommer att vara:

Alex är 30 år gammal.

Fördjupning

JSONs enkelhet och effektivitet har gjort det till standarden för datautbyte på webben, vilket har omkullkastat XML från dess tron. Introducerat i början av 2000-talet, härstammar JSON från JavaScript men stöds nu i de flesta språk.

Alternativ till JSON inkluderar XML, som är mer verbose, och binära format som Protocol Buffers eller MessagePack, som är mindre läsbara för människor men mer effektiva i storlek och hastighet. Varje har sina användningsområden; valet beror på dina specifika databehov och sammanhang.

I Java, bortom Jackson och Gson, har vi JsonB och org.json som andra bibliotek för att hantera JSON. Jackson erbjuder strömbaserad bearbetning och är känt för hastighet, medan Gson är hyllat för sin enkelhet i användning. JsonB är en del av Jakarta EE, som erbjuder en mer standardiserad metod.

När du implementerar JSON, kom ihåg att hantera dina undantag på rätt sätt - din kod bör vara robust mot dåliga inmatningar. Överväg även säkerhetsaspekterna av automatisk databindning – validera alltid dina indata!

Se även