Heim >Java >javaLernprogramm >Jackson von Java konvertiert einen JSON-String in eine generische Liste
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 List6f9a1a6711dbe2504e0d3824080f2898 konvertieren möchten, müssen Sie den komplexen Typ zunächst in einen generischen Sammlungstyp deserialisieren.
Wenn es ArrayList6f9a1a6711dbe2504e0d3824080f2898 ist, dann verwenden Sie getTypeFactory().constructParametricType(collectionClass, elementClasses);
Wenn es HashMapf06a8c1c72a64d06223d9867f08acdf6 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); }
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!