我正在尝试做这样的事情,但它不起作用:
Map<String, String> propertyMap = new HashMap<String, String>();
propertyMap = JacksonUtils.fromJSON(properties, Map.class);
但是IDE说:
未经检查的分配
Map to Map<String,String>
这样做的正确方法是什么?我只使用 Jackson,因为这是项目中已经可用的,是否有一种本地 Java 方式来转换为 JSON 或从 JSON 转换?
在 PHP 中,我会简单地 json_decode($str)
然后我会取回一个数组。我在这里需要基本上相同的东西。
原文由 adamJLev 发布,翻译遵循 CC BY-SA 4.0 许可协议
[2020 年 9 月更新] 虽然我多年前在这里的原始答案似乎很有帮助并且仍在获得支持,但我现在使用 Google 的 GSON 库,我发现它更直观。
我有以下代码:
它正在从文件中读取,但
mapper.readValue()
也将接受InputStream
并且您可以使用以下命令从字符串中获取InputStream
:在 我的博客 上有更多关于映射器的解释。