2016-06-28 1 views
0

У меня есть код вершины, который определяет структуру JSON. Я хотел бы получить советы о том, как я могу назначить значения строковым полям JSON с использованием Apex. JSON будет иметь массив (PackageData), который содержит поля, которые должны содержать значенияJson/Apex: Назначение значений узлам в массиве Json

Apex код:

public class Shipment{ 
    public PackageData[] PackageData; 
} 

public class PackageData{ 
    public Packaging Packaging; 
    public Dimensions Dimensions; 
    public PackageWeight PackageWeight; 
} 

public class Packaging{ 
    public string Code; 
} 

public class Dimensions{ 
    public UnitOfMeasurement UnitOfMeasurement; 
    public string Length; 
    public string Width; 
    public string Height; 
} 

public class UnitOfMeasurement{ 
    public string Code; 
} 

public class PackageWeight{ 
    public UOM UOM; 
    public string Weight; 
} 

public class UOM{ 
    public string Code; 
} 

JSON:

{ 
    "PackageData": [ 
     { 
      "Packaging": { 
       "Code": "" 
      }, 
      "Dimensions": { 
       "UnitOfMeasurement": { 
        "Code": "" 
       }, 
       "Length": "", 
       "Width": "", 
       "Height": "" 
      }, 
      "PackageWeight": { 
       "UOM": { 
        "Code": "" 
       }, 
       "Weight": "" 
      } 
     } 
    ] 
} 

ответ

1

JSON всегда строка, поэтому являются парсером, который анализирует объект до JSON String и наоборот

Parser делает его работу и автоматически разобрать на Строка, Вам не нужно беспокоиться за это

Json к объекту:

ClassName objName = (ClassName) System.JSON.deserialize(jsonString, ClassName.class); 

объекта в Json:

String jsonString = System.JSON.serialize(objName);