Java Xəritəsini JSON-a çevirmək üçün bir neçə yol var. Java Dizi və Xəritələri JSON-a və əksinə çevirmək olduqca yaygındır.
Bu yazıda, Java Map-i JSON-a çevirmək üçün 3 fərqli nümunəyə baxırıq. Jackson, Gson və org.json kitabxanalarından istifadə edəcəyik.
Aşağıdakı nümunədə Java Map-i JSON-a çevirmək üçün Jackson Core və Jackson Binding istifadə olunur.
Jackson kitabxanalarından istifadə etmək üçün əvvəlcə onları pom.xml
fayl:
com.fasterxml.jackson.core
jackson-core
2.9.8
com.fasterxml.jackson.core
jackson-databind
2.9.8
Sonra:
import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.ObjectMapper; import org.junit.jupiter.api.Test; import java.util.HashMap; import java.util.Map; public class ConvertJavaMapToJson {
@Test
public void convertMapToJson() {
Map elements = new HashMap();
elements.put('Key1', 'Value1');
elements.put('Key2', 'Value2');
elements.put('Key3', 'Value3');
ObjectMapper objectMapper = new ObjectMapper();
try {
String json = objectMapper.writeValueAsString(elements);
System.out.println(json);
} catch (JsonProcessingException e) {
e.printStackTrace();
}
} }
Çıxış:
{'Key2':'Value2','Key1':'Value1','Key3':'Value3'}
Çıxışdan göründüyü kimi, JSON-dakı elementlərin sırası, onları xəritəyə əlavə etdiyimiz sırayla eyni deyil.
Sifarişi qorumaq üçün SortedMap
istifadə etməliyik əvəzinə.
məs.
SortedMap elements = new TreeMap();
Çıxış:
{'Key1':'Value1','Key2':'Value2','Key3':'Value3'}
Əlaqəli:
Aşağıdakı nümunə Java Map-i JSON-a çevirmək üçün Gson kitabxanasından istifadə edir, lakin əvvəlcə Gson'u pom.xml
-ə bir asılılıq olaraq əlavə etməliyik. fayl.
com.google.code.gson
gson
2.8.5
Sonra:
import com.google.gson.Gson; import com.google.gson.reflect.TypeToken; import org.junit.jupiter.api.Test; import java.lang.reflect.Type; import java.util.HashMap; import java.util.SortedMap; import java.util.TreeMap; public class ConvertJavaMapToJson {
@Test
public void convertMapToJson() {
SortedMap elements = new TreeMap();
elements.put('Key1', 'Value1');
elements.put('Key2', 'Value2');
elements.put('Key3', 'Value3');
Gson gson = new Gson();
Type gsonType = new TypeToken(){}.getType();
String gsonString = gson.toJson(elements,gsonType);
System.out.println(gsonString);
} }
Çıxış:
{'Key1':'Value1','Key2':'Value2','Key3':'Value3'}
Aşağıdakı misal Java Map-i JSON-a çevirmək üçün org.json kitabxanasından istifadə edir, lakin əvvəlcə pom.xml
-ə bir asılılıq olaraq org.json əlavə etməliyik. fayl.
org.json
json
20180813
Sonra:
import org.json.JSONObject; import org.junit.jupiter.api.Test; import java.util.HashMap; import java.util.Map; public class ConvertJavaMapToJson {
@Test
public void convertMapToJson() {
Map elements = new HashMap();
elements.put('Key1', 'Value1');
elements.put('Key2', 'Value2');
elements.put('Key3', 'Value3');
JSONObject json = new JSONObject(elements);
System.out.println(json);
} }
Çıxış:
{'Key2':'Value2','Key1':'Value1','Key3':'Value3'}