XML to JSON의 경우에는 org.json 라이브러리를 이용해서 간단하게 변환합니다.
maven dependency는 아래와 같습니다.
<dependency> <groupId>org.json</groupId> <artifactId>json</artifactId> <version>20160212</version> </dependency> |
자바에서는 아래와 같이 XML.toJSONObject를 이용하여 변환 할 수 있습니다.
public JSONObject parseXmlToJson(String xml){ JSONObject json = XML.toJSONObject(xml); return json; } |
JSON to Map의 경우에는 jackson 라이브러리를 이용해서 변환합니다.
maven dependency는 아래와 같습니다.
<dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-core</artifactId> <version>2.4.2</version> </dependency> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind</artifactId> <version>2.4.2</version> </dependency> <dependency> <groupId>com.fasterxml.jackson.module</groupId> <artifactId>jackson-module-jaxb-annotations</artifactId> <version>2.4.2</version> </dependency> |
자바에서는 아래와 같이 해주시면 됩니다.
public Map<String, Object> parseJsonToMap(String json) { ObjectMapper mapper = new ObjectMapper(); try { return mapper.readValue(json, new TypeReference<Map<String, Object>>() { }); } catch (JsonParseException e) { e.printStackTrace(); } catch (JsonMappingException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } return new HashMap<String, Object>(); } |