Jackson - İlk Uygulama
Jackson kütüphanesinin detaylarına geçmeden önce, bir uygulamanın nasıl çalıştığını görelim. Bu örnekte Öğrenci sınıfı oluşturduk. Öğrenci ayrıntılarıyla bir JSON dizisi oluşturup öğrenci nesnesine serisini kaldırıp ardından bir JSON Dizesi olarak serileştireceğiz.
JacksonTester adlı bir java sınıf dosyası oluşturun. C:\>Jackson_WORKSPACE.
Dosya: JacksonTester.java
import java.io.IOException;
import com.fasterxml.jackson.core.JsonParseException;
import com.fasterxml.jackson.databind.JsonMappingException;
import com.fasterxml.jackson.databind.ObjectMapper;
public class JacksonTester {
public static void main(String args[]){
ObjectMapper mapper = new ObjectMapper();
String jsonString = "{\"name\":\"Mahesh\", \"age\":21}";
//map json to student
try{
Student student = mapper.readValue(jsonString, Student.class);
System.out.println(student);
jsonString = mapper.writerWithDefaultPrettyPrinter().writeValueAsString(student);
System.out.println(jsonString);
}
catch (JsonParseException e) { e.printStackTrace();}
catch (JsonMappingException e) { e.printStackTrace(); }
catch (IOException e) { e.printStackTrace(); }
}
}
class Student {
private String name;
private int age;
public Student(){}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String toString(){
return "Student [ name: "+name+", age: "+ age+ " ]";
}
}
Verify the result
Kullanarak sınıfları derleyin javac aşağıdaki gibi derleyici:
C:\Jackson_WORKSPACE>javac JacksonTester.java
Şimdi sonucu görmek için jacksonTester'ı çalıştırın:
C:\Jackson_WORKSPACE>java JacksonTester
Çıkışı Doğrulayın
Student [ name: Mahesh, age: 21 ]
{
"name" : "Mahesh",
"age" : 21
}
Hatırlanması gereken adımlar
Burada dikkate alınması gereken önemli adımlar aşağıdadır.
Adım 1: ObjectMapper nesnesi oluşturun.
ObjectMapper nesnesi oluşturun. Yeniden kullanılabilir bir nesnedir.
ObjectMapper mapper = new ObjectMapper();
Adım 2: JSON'u Nesneye Serileştirme.
JSON'dan Object'i almak için readValue () yöntemini kullanın. Json dizesini / json dizesinin kaynağını ve nesne türünü parametre olarak iletin.
//Object to JSON Conversion
Student student = mapper.readValue(jsonString, Student.class);
Adım 3: Nesneyi JSON'a Seri Hale Getirin.
Bir nesnenin JSON dize temsilini almak için writeValueAsString () yöntemini kullanın.
//Object to JSON Conversion
jsonString = mapper.writerWithDefaultPrettyPrinter().writeValueAsString(student);