JSON anlamına gelir JavaScript Nesnesi Gösterimi bu, verileri depolamak ve taşımak için kullanılan çok küçük ağırlıklı bir formattır. JSON formatının anlaşılması çok kolaydır çünkü kendini tanımlayan doğa. JSON esas olarak bir sunucu ile bir web uygulaması arasında veri aktarmak için kullanılır.
JSON formatında yazılmış bir çalışanın ayrıntıları şuna benzer:
{ 'Employee': { 'name': 'Emma Watson', 'salary': 40000, 'married': false } }
Java nesnesi belirli bir veri türünü yararlı kılmak için özelliklere ve yöntemlere sahip bir sınıfın veya bağımsız bir bileşenin örneğidir. Java Nesnenin bir durumu, davranışı ve kimliği vardır.
Bir çalışanın Java nesnesi şu şekilde yazılır:
//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); } }
Çoğu zaman Java nesnelerini kolayca anlayabilmemiz için JSON'a dönüştürmemiz gerekir. Bir Java nesnesini JSON nesnesine dönüştürmek için aşağıdaki iki yönteme veya yola sahibiz:
- GSON kütüphanesini kullanma
- Jackson API'sini kullanma
Her ikisini de tek tek anlayalım.
GSON kütüphanesini kullanma
GSON kütüphane, bir Java nesnesinin JSON'a dönüştürülmesinde önemli bir rol oynar. GSON kitaplığı yalnızca Java nesnesini JSON'a dönüştürmekle kalmaz, aynı zamanda onu JSON dizesini eşdeğer Java nesnesine dönüştürmek için de kullanır.
Bir Java nesnesini JSON'a dönüştürmek için aşağıdaki adımlar şunlardır:
- Bir Maven projesi oluşturun.
- GSON bağımlılığını ekleyin xml dosya.
- JSON'a dönüştürmek için Düz Eski Java Nesnesi oluşturun.
- Java nesnesini JSON'a dönüştürmek için bir Java sınıfı oluşturun.
Adım 1: Maven projesi oluşturun
İlk adımda Eclipse IDE kullanarak bir maven projesi oluşturmamız gerekiyor. Java nesnelerini JSON'a dönüştürmek gelişmiş bir Java konseptidir, bu nedenle programları kolayca anlamak için eclipse benzeri bir IDE kullanmanızı öneririz.
2. Adım: pom.xml'e GSON bağımlılığı ekleyin
Bir sonraki adımda GSON kütüphanesini kullanabilmek için pom.xml dosyasına aşağıdaki GSON bağımlılığını eklememiz gerekiyor.
MySQL benzersiz anahtarı
com.google.code.gson gson 2.8.6
Bağımlılığı ekledikten sonra pom.xml dosyası aşağıdaki gibi görünür:
3. Adım: JSON'a dönüştürmek için POJO oluşturun
Bir sonraki adımda bir oluşturmamız gerekiyor. POJO JSON nesnesine dönüştürmek istediğimiz . Örneğimizde, alıcı ve ayarlayıcılara sahip bir MobilePhone sınıfı oluşturuyoruz. marka, isim, koç , Ve 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 + ']'; } }
Adım 4: Java nesnesini JSON'a dönüştürmek için bir Java sınıfı oluşturun
java'yı nasıl yükseltirim
MobilePhone nesnesini JSON'a dönüştürmek için GSON kullanan yeni bir Java sınıfı oluşturmamız gerekiyor. Bu sınıfta getMobile() yöntemini oluşturacağız. Yöntemin içinde, değerleri MobilePhone sınıfının özelliklerine ayarlıyoruz ve MobilePhone nesnesini döndürüyoruz.
Ana yöntemde, MobilePhone sınıfının bir nesnesini oluşturacağız ve geMobile() yönteminin döndürülen değerini saklayacağız. Bundan sonra kullanacağız Gson().toJson() bu nesneyi bir JSON nesnesine dönüştürme yöntemi.
JSON.java'yı dönüştür
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)); } }
ConvertJSON.java dosyasını çalıştırdığımızda MobilePhone sınıfı nesnesinin JSON nesnesini göreceğiz.
Jackson kütüphanesini kullanma
Jackson kütüphane Java tabanlı en basit kütüphanelerden biridir. Jackson kütüphanesi, Java nesnesini JSON'a (veya tam tersi) serileştirmek için kullanılır. Nesne Eşleştiricisi Jackson API sınıfı, Java nesnesini JSON biçimine veya nesnesine dönüştürmek için yöntemler sağlar. Nesne Eşleştiricisi sınıf writeValueAsString() yöntemi, JSON nesnesini parametre olarak alır ve ilgili JSON dizesini döndürür.
Jackson API'sini kullanarak Java nesnesini bir JSON nesnesine dönüştürmek için aşağıdaki adımlar şunlardır:
- Maven projesi oluşturma
- Pom.xml dosyasına Jackson bağımlılığını ekleyin.
- Bir POJO nesnesi oluşturun.
- Java nesnesini JSON nesnesine dönüştürmek için yeni bir sınıf oluşturun.
Adım 1: Maven projesi oluşturun
İlk adımda Eclipse IDE kullanarak bir maven projesi oluşturmamız gerekiyor. Tıpkı GSON gibi Jackson API de Eclipse tarafından desteklenmektedir.
Adım 2: Pom.xml'e Jackson bağımlılığını ekleyin
Bir sonraki adımda Jackson kütüphanesini kullanabilmek için pom.xml dosyamıza aşağıdaki Jackson bağımlılığını eklememiz gerekiyor.
com.fasterxml.jackson.core jackson-databind 2.12.1
3. Adım: JSON'a dönüştürmek için POJO oluşturun
Bir sonraki adımda JSON nesnesine dönüştürmek istediğimiz POJO’yu oluşturmamız gerekiyor. Bu örnekte, aşağıdaki gibi özellikler için alıcı ve ayarlayıcılara sahip bir Ürün sınıfı oluşturuyoruz. kimlik, isim, Ve fiyat .
Ürün.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 + ']'; } }
Adım 4: Java nesnesini JSON'a dönüştürmek için bir Java sınıfı oluşturun
Önceki GSON örneğimizde olduğu gibi, yeni bir Java sınıfı da oluşturacağız. ObjectToJson . Yöntemin içinde, değerleri Product nesnesine ayarlamak ve Product sınıfının bu nesnesini döndürmek için getObjectData() yöntemini oluşturduk.
Main() yönteminde Product sınıfına ve ObjectMapper sınıfına ait bir nesne oluşturduk. Bundan sonra kullanacağız writeValueAsString() Java nesnesini bir JSON nesnesine dönüştürmek için ObjectMapper sınıfının yöntemi.
html'den javascript işlevini çağırın
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; } }
Çalıştırdığımızda ObjectToJson.java dosyasında Product sınıfı nesnesinin JSON dizesini göreceğiz.
Her iki yöntem de farklı senaryolarda kullanılır. Her ikisi de basit, hızlı ve kullanımı ve anlaşılması kolaydır.