JavaのJacksonはjson文字列を汎用リストに変換します

高洛峰
リリース: 2017-02-16 16:50:26
オリジナル
1424 人が閲覧しました

Jackson は、Java と Json の間の変換では最も速いフレームワークだと感じます。もちろん Google の Gson も非常に優れていますが、インターネット上の誰かのパフォーマンス テストによると、一般的には Jackson の方が速いようです。 JavaBeans Json と Json 間の変換は、ObjectMapper オブジェクトの readValue メソッドと writeValueAsString メソッドを使用して実現できます。ただし、List などの複合型のコレクションを変換する場合は、まず複合型を汎用のコレクション型に逆シリアル化する必要があります。

ArrayList の場合は ObjectMapper の getTypeFactory().constructParametricType(collectionClass, elementClasses);

HashMap の場合は ObjectMapper の 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);  
}
ログイン後にコピー

以上がこの記事の全内容です。皆様の学習に役立つことを願っております。また、皆様にも PHP 中国語 Web サイトをサポートしていただければ幸いです。

json 文字列を汎用リストに変換する Java の Jackson に関連するその他の記事については、PHP 中国語 Web サイトに注目してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート