java에서 json을 처리하는 다양한 변환 방법 (추천)
Json에 필요한 패키지:
commons-httpclient-3.1.jar
commons-lang-2.4.jar
commons-logging-1.1.1.jar
json-lib-2.2.3-jdk13.jar
ezmorph-1.0.6.jar
commons-collections-3.2.1.jar
자바가 나타나다.lang. NoClassDefFoundError: net/sf/ezmorph/Morpher 오류는 ezmorph를 가져오지 않았기 때문입니다.jar 파일이나 버전이 잘못되었습니다.
자바가 나타나다.lang. NoClassDefFoundError: org/apache/commons/collections/map/ListOrderedMap 오류는 commons-collections를 가져오지 않았기 때문입니다.jar 파일이나 버전이 잘못되었습니다.
1.java 집합 json 집합 사이의 전환
1. Java 컬렉션을 Json 컬렉션으로 변환
키 클래스: JSONArray jsonArray = JSONArray.fromObject(Object obj);
사용 설명: JSONArray에 Java 컬렉션 객체를 직접 전달합니다.fromObject()에서 JSONARray 컬렉션을 얻고 JSONArray의 toString() 방법을 직접 사용하면 json 컬렉션을 얻을 수 있습니다
예제 코드:
@Test
  public void testCreateJsonArray() {
    //Java 
    List<Employee> list = new ArrayList<Employee>();
    list.add(new Employee("zhangSan","13"));
    list.add(new Employee("liSi","14"));
    // json 
    JSONArray jsonArray = JSONArray.fromObject(list);
    System.out.println(jsonArray.toString());
  }
[{"age":"13","name":"zhangSan"},{"age":"14","name":"liSi"}]키 클래스: JSONArray jsonArray = JSONArray.fromObject(Object obj);
사용 설명: json 문자열 대상을 전송하면 JSON Array 대상을 얻을 수 있고, JSON Array 대상의 toCollection(JSON Array json Array, Class) 방법을 호출하면 Java 대상의 집합을 얻을 수 있습니다.
예제 코드:
@Test
  public void testParseJsonArray() {
    //json 
    String jsonString = "[{\"age\":\"13\",\"name\":\"zhangSan\"},{\"age\":\"14\",\"name\":\"liSi\"}]";
    
    JSONArray jsonArray = JSONArray.fromObject(jsonString);
    //Java 
    List<Employee> list = (List<Employee>) jsonArray.toCollection(jsonArray, Employee.class);
    for(Employee employee : list){
      System.out.println(employee);
    }
  }
[name=zhangSan,age=13]
[name=liSi,age=14]1. XML에서 Json으로 변환
public static String xmlToJson(String xml) {
XMLSerializer serializer = new XMLSerializer();
return serializer.read(xml).toString();
}
public static String jsonToXML(String json) {
  XMLSerializer xmlSerializer = new XMLSerializer();
  //  
  xmlSerializer.setRootName("xml");
  //  
  xmlSerializer.setTypeHintsEnabled(false);
  String xmlStr = "";
  if (json.contains("[") && json.contains("]")) {
    // jsonArray
    JSONArray jobj = JSONArray.fromObject(json);
    xmlStr = xmlSerializer.write(jobj);
  } else {
    // jsonObject
    JSONObject jobj = JSONObject.fromObject(json);
    xmlStr = xmlSerializer.write(jobj);
  }
  System.out.println(" :" + xmlStr);
  return xmlStr;
}이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
38. Java의 Leetcode 솔루션텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.