Heim > Java > javaLernprogramm > Hauptteil

Jackson von Java konvertiert einen JSON-String in eine generische Liste

高洛峰
Freigeben: 2017-02-16 16:50:26
Original
1425 Leute haben es durchsucht

Jackson ist meiner Meinung nach das schnellste Framework für die Konvertierung zwischen Java und Json. Natürlich ist Gson von Google auch sehr gut, aber basierend auf den Leistungstests von Leuten im Internet scheint Jackson schneller zu sein

Jackson kann die Konvertierung zwischen allgemeinem JavaBean und Json durchführen, indem er einfach die Methoden readValue und writeValueAsString des ObjectMapper-Objekts verwendet. Wenn Sie jedoch eine Sammlung komplexer Typen wie List konvertieren möchten, müssen Sie den komplexen Typ zunächst in einen generischen Sammlungstyp deserialisieren.

Wenn es ArrayList ist, dann verwenden Sie getTypeFactory().constructParametricType(collectionClass, elementClasses);

Wenn es HashMap ist, dann verwenden Sie getTypeFactory().constructParametricType( HashMap.class,String.class, YourBean.class);

public final ObjectMapper mapper = new ObjectMapper(); 
  
public static void main(String[] args) throws Exception{ 
  JavaType javaType = getCollectionType(ArrayList.class, YourBean.class); 
  List<YourBean> lst = (List<YourBean>)mapper.readValue(jsonString, javaType); 
}
 
  /**  
  * 获取泛型的Collection Type 
  * @param collectionClass 泛型的Collection  
  * @param elementClasses 元素类  
  * @return JavaType Java类型  
  * @since 1.0  
  */ 
public static JavaType getCollectionType(Class<?> collectionClass, Class<?>... elementClasses) {  
  return mapper.getTypeFactory().constructParametricType(collectionClass, elementClasses);  
}
Nach dem Login kopieren

Das Obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, dass er zum Lernen aller beiträgt, und ich hoffe auch, dass jeder ihn unterstützt die chinesische PHP-Website.

Weitere Artikel zum Thema Jackson, der JSON-Strings in generische Listen in Java umwandelt, finden Sie auf der chinesischen PHP-Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage