JSON jelentése JavaScript objektum jelölés ez egy nagyon kicsi súlyozott formátum az adatok tárolására és továbbítására. A JSON formátum nagyon könnyen érthető, mert rendelkezik a önleíró természet. A JSON-t elsősorban a szerver és a webalkalmazás közötti adatátvitelre használják.
Egy alkalmazott JSON formátumban írt adatai így néznek ki:
{ 'Employee': { 'name': 'Emma Watson', 'salary': 40000, 'married': false } }
Java objektum egy osztály vagy egy önálló komponens példánya, amely tulajdonságokkal és módszerekkel rendelkezik bizonyos típusú adatok hasznossá tételére. Jáva az objektumnak van állapota, viselkedése és identitása.
Az alkalmazott Java objektuma a következő módon van írva:
//Defining an Employee class class Employee{ //Defining properties String name; int salary; Boolean married; //creating main() method of teh Employee class public static void main(String args[]){ //Creating object of Employee class Employee emp =new Employee(); emp.name = 'Emma Watson'; emp.salary = 40000; emp.married = false; //Printing values of the object System.out.println(emp.name); System.out.println(emp.salary); System.out.println(emp.married); } }
Sokszor át kell alakítanunk a Java objektumokat JSON-ba, hogy könnyen megérthessük őket. Java-objektumok JSON-objektummá konvertálásához a következő két módszerünk van:
- GSON könyvtár használata
- Jackson API használata
Értsük meg mindkettőt egyenként.
GSON könyvtár használata
A GSON könyvtár fontos szerepet játszik a Java objektumok JSON-ba konvertálásában. A GSON-könyvtár nemcsak a Java objektumot alakítja át JSON-ba, hanem arra is használja, hogy a JSON-karakterláncot a megfelelő Java-objektummá konvertálja.
A Java objektumok JSON-ba konvertálásához a következő lépések vannak:
- Hozzon létre egy Maven projektet.
- GSON-függőség hozzáadása xml fájlt.
- Hozzon létre egyszerű régi Java objektumot JSON-ba konvertálásához.
- Hozzon létre egy Java osztályt a Java objektum JSON formátumba konvertálásához.
1. lépés: Hozzon létre egy Maven projektet
Első lépésben egy maven projektet kell létrehoznunk az eclipse IDE segítségével. A Java objektumok JSON-ba konvertálása egy fejlett Java-koncepció, ezért javasoljuk, hogy használjon olyan IDE-t, mint az eclipse a programok egyszerű megértéséhez.
2. lépés: GSON-függőség hozzáadása a pom.xml fájlhoz
A következő lépésben a következő GSON-függőséget kell hozzáadnunk a pom.xml fájlhoz a GSON-könyvtár használatához.
kat timpf súly
com.google.code.gson gson 2.8.6
A függőség hozzáadása után a pom.xml fájl a következőképpen néz ki:
3. lépés: Hozzon létre POJO-t a JSON-ba konvertáláshoz
A következő lépésben létre kell hoznunk a POJO , amelyet JSON objektummá szeretnénk konvertálni. Példánkban létrehozunk egy MobilePhone osztályt getterrel és setterekkel márka, név, ram , és rom .
MobilePhone.java
package javaTpoint.JavaObjectToJSON; //Creating MobilePhone class public class MobilePhone { //Creating properties of the class private String brand; private String name; private int ram; private int rom; //Setter and Getters public String getBrand() { return brand; } public void setBrand(String brand) { this.brand = brand; } public String getName() { return name; } public void setName(String name) { this.name = name; } public int getRam() { return ram; } public void setRam(int ram) { this.ram = ram; } public int getRom() { return rom; } public void setRom(int rom) { this.rom = rom; } Overriding the toString() method @Override public String toString() { // TODO Auto-generated method stub return ''MobilePhone [MobileBrand '+ brand + ', MobileName = ' + name + ', RAM = ' + ram + ', ROM = ' + rom + ']'; } }
4. lépés: Hozzon létre egy Java osztályt a Java objektum JSON-ba konvertálásához
Létre kell hoznunk egy új Java osztályt, amely GSON segítségével konvertálja a MobilePhone objektumot JSON-ba. Ebben az osztályban létrehozzuk a getMobile() metódust. A metóduson belül beállítjuk az értékeket a MobilePhone osztály tulajdonságaira, és visszaadjuk a MobilePhone objektumot.
A fő metódusban létrehozunk egy objektumot a MobilePhone osztályból, és eltároljuk a geMobile() metódus visszaadott értékét. Ezt követően használjuk a Gson().toJson() metódussal az objektumot JSON-objektummá konvertálja.
ConvertJSON.java
cast string mint int java
package JavaTpoint.JavaObjectToJSON; import com.google.gson.Gson; public class ConvertJSON { public static MobilePhone getMobile(MobilePhone mobile) { mobile.setBrand('SAMSUNG'); mobile.setName('J2 Core'); mobile.setRam(2); mobile.setRom(4); return mobile; } public static void main(String[] args) { // TODO Auto-generated method stub MobilePhone mobilePhone = new MobilePhone(); mobilePhone = getMobile(mobilePhone); System.out.println('The JSON representation of Object mobilePhone is '); System.out.println(new Gson().toJson(mobilePhone)); } }
Amikor futtatjuk a ConvertJSON.java fájlt, látni fogjuk a MobilePhone osztály objektum JSON objektumát.
Jackson könyvtár használata
Jackson könyvtár az egyik legegyszerűbb Java-alapú könyvtár. A Jackson-könyvtár a Java objektum JSON-ba való sorosítására szolgál, és fordítva. A ObjectMapper A Jackson API osztálya módszereket biztosít a Java objektum JSON formátumra vagy objektummá konvertálására. A ObjectMapper osztály writeValueAsString() metódus paraméterként veszi a JSON objektumot, és visszaadja a megfelelő JSON-karakterláncot.
A következő lépések a következők a Java objektum JSON objektummá konvertálásához a Jackson API használatával:
- Hozzon létre egy Maven projektet
- Adja hozzá a Jackson-függőséget a pom.xml fájlhoz.
- Hozzon létre egy POJO objektumot.
- Hozzon létre egy új osztályt a Java objektum JSON objektummá konvertálásához.
1. lépés: Hozzon létre egy Maven projektet
Első lépésben egy maven projektet kell létrehoznunk az eclipse IDE segítségével. A GSON-hoz hasonlóan a Jackson API-t is támogatja az Eclipse.
2. lépés: Adja hozzá a Jackson-függőséget a pom.xml fájlhoz
A következő lépésben a következő Jackson-függőséget kell hozzáadnunk a pom.xml fájlunkhoz a Jackson-könyvtár használatához.
com.fasterxml.jackson.core jackson-databind 2.12.1
3. lépés: Hozzon létre POJO-t a JSON-ba konvertáláshoz
A következő lépésben létre kell hoznunk egy POJO-t, amelyet JSON objektummá szeretnénk konvertálni. Ebben a példában létrehozunk egy Product osztályt, amely getterrel és setterekkel rendelkezik a tulajdonságokhoz, mint például azonosító, név, és ár .
Product.java
package JavaTpoint.JavaObjectToJSON; //Creating Product class public class Product { //Creating properties of Product class private int id; private String name; private int price; //Getter and Setters public int getId() { return id; } public void setId(int id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public int getPrice() { return price; } public void setPrice(int price) { this.price = price; } @Override public String toString() { // TODO Auto-generated method stub return ''Product [ProductId '+ id + ', ProductName = ' + name + ', ProductPrice = ' + price + ']'; } }
4. lépés: Hozzon létre egy Java osztályt a Java objektum JSON-ba konvertálásához
Csakúgy, mint az előző GSON-példánkban, egy új Java osztályt is létrehozunk ObjectToJson . A metóduson belül létrehoztuk a getObjectData() metódust, amely beállítja a Product objektum értékeit, és visszaadja a Product osztály objektumát.
A main() metódusban létrehoztunk egy objektumot a Product osztályból és az ObjectMapper osztályból. Ezt követően használjuk a writeValueAsString() Az ObjectMapper osztály metódusa a Java objektum JSON objektummá való rejtéséhez.
ObjectToJson.java
package JavaTpoint.JavaObjectToJSON; import java.io.IOException; import com.fasterxml.jackson.databind.ObjectMapper; public class ObjectToJson { public static void main(String[] a) { // Creating object of Product Product product = new Product(); // Inserting the data into the object product = getObjectData(product); // Creating Object of ObjectMapper define in Jackson API ObjectMapper Obj = new ObjectMapper(); try { // Converting the Java object into a JSON string String jsonStr = Obj.writeValueAsString(product); // Displaying Java object into a JSON string System.out.println(jsonStr); } catch (IOException e) { e.printStackTrace(); } } // Getting data that we want to insert into an object public static Product getObjectData(Product product) { // Insert the data product.setId(101); product.setName('Spark 131'); product.setPrice(10000); // Returning the product object return product; } }
Amikor futtatjuk a ObjectToJson.java fájlt, látni fogjuk a Product class objektum JSON karakterláncát.
Mindkét módszert különböző forgatókönyvekben használják. Mindkettő egyszerű, gyors, könnyen használható és érthető.
java escape karakter