Как преобразовать hashmap в объект JSON в Java
Как преобразовать или преобразовать hashmap в объект JSON в Java и снова преобразовать объект JSON в строку JSON?
Переведено автоматически
Ответ 1
Вы можете использовать:
new JSONObject(map);
Другие функции вы можете получить из его документацииhttp://stleary.github.io/JSON-java/index.html
Ответ 2
Gson также можно использовать для сериализации произвольно сложных объектов.
Вот как вы это используете:
Gson gson = new Gson(); String json = gson.toJson(myObject);
Gson автоматически преобразует коллекции в JSON массивы. Gson может сериализовать закрытые поля и автоматически игнорирует временные поля.
Gson
JSON
Ответ 3
Вы можете преобразовать Map в JSON с помощью Jackson следующего:
Map
Jackson
Map<String,Object> map = new HashMap<>();//You can convert any Object.String[] value1 = new String[] { "value11", "value12", "value13" };String[] value2 = new String[] { "value21", "value22", "value23" };map.put("key1", value1);map.put("key2", value2);map.put("key3","string1");map.put("key4","string2");String json = new ObjectMapper().writeValueAsString(map);System.out.println(json);
Зависимости Maven для Jackson :
<dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-core</artifactId> <version>2.5.3</version> <scope>compile</scope></dependency><dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind</artifactId> <version>2.5.3</version> <scope>compile</scope></dependency>
Если вы используете JSONObject библиотеку, вы можете преобразовать map в JSON следующим образом:
JSONObject
Библиотека JSONObject:import org.json.JSONObject;
import org.json.JSONObject;
Map<String, Object> map = new HashMap<>();// Convert a map having list of values.String[] value1 = new String[] { "value11", "value12", "value13" };String[] value2 = new String[] { "value21", "value22", "value23" };map.put("key1", value1);map.put("key2", value2);JSONObject json = new JSONObject(map);System.out.println(json);
Зависимости Maven для JSONObject :
<dependency> <groupId>org.json</groupId> <artifactId>json</artifactId> <version>20140107</version></dependency>
Ответ 4
Пример использования json
Map<String, Object> data = new HashMap<String, Object>(); data.put( "name", "Mars" ); data.put( "age", 32 ); data.put( "city", "NY" ); JSONObject json = new JSONObject(); json.putAll( data ); System.out.printf( "JSON: %s", json.toString(2) );
вывод::
JSON: { "age": 32, "name": "Mars", "city": "NY"}
Вы также можете попробовать использовать GSON от Google.GSON от Google - лучшая доступная библиотека для преобразования объектов Java в их представление в формате JSON.
http://code.google.com/p/google-gson/