Java で Jackson を使用しますか? " />
Jackson JSON を使用して JSON 文字列をマップ
質問:
Jackson を使用して JSON 文字列を Map
答え:
Jackson JSON を使用する正しいアプローチは、次のように TypeReference を利用して目的のマップ タイプを指定することです。
<code class="java">public void testJackson() throws IOException { ObjectMapper mapper = new ObjectMapper(); TypeReference<HashMap<String,Object>> typeRef = new TypeReference<HashMap<String,Object>>() {}; HashMap<String,Object> o = mapper.readValue(from, typeRef); System.out.println("Got " + o); } </code>
文字列から読み取る場合は、new ByteArrayInputStream(astring.getBytes("UTF-8")) を使用して InputStream を取得し、それを mapper.readValue() に渡します。
代替ネイティブ Java JSON 変換:
Java での JSON 変換のオプションは Jackson だけではありません。Google の Gson ライブラリでは、より直感的なアプローチが提供されています。
追加注:
Jackson の代わりに Gson ライブラリを使用する推奨を反映するために、元の回答が更新されました。
以上がJava で Jackson を使用して JSON 文字列を Map