amazon-web-services - 如何在 Json 和 Map 之间进行转换在
问题描述
我想使用 AWS Java SDK 2.0 将编码为 Json 字符串的对象保存到 DynamoDB。
在 AWS Java SDK 1.n 中,可以AttributeValues
使用Item.fromJSON(myJsonString).toAttributeValues()
.
虽然可以同时使用两个 SDK,AttributeValue
但两个 SDK 版本(1.11、2.0)定义的并不相同,不能互换使用。
是否有任何 AWS 提供的或社区标准的方法可以从 json 字符串/blob 转换Map<String, AttributeValue>
为 AWS Java SDK 2.0?
请注意 - 这个问题是关于如何解决AWS Java SDK 2.0的问题,而不是 AWS Java SDK 1.n 的 dynamodbv2 模型。如果您认为这个问题是重复的,请仔细检查它重复的问题/答案的 SDK 版本。
解决方案
将 JSON 转换为 DynamoDB 的 AttributeValue 的示例
String productString = readFileFromResources("data/categoryFix.json");
HashMap<String,Object> result = new ObjectMapper().readValue(productString, HashMap.class);
Map<String, AttributeValue> attributes = InternalUtils.fromSimpleMap(result);
上面的代码运行良好,即使 InternalUtils 已被弃用。
推荐阅读
- oracle - 如果值不在 oracle 组中,如何获取
- javascript - 如何使用 testEnvironment 作为 NodeEnvironment 启动快速服务器?
- python-3.x - 使用 BS4 的 Web 抓取返回不正确的 html 内容
- sql - Pandas - 将数据框中的多个项目循环到 SQL 查询
- angular - 从服务器收到响应时停止某些操作
- firebase - 根据用户 id 获取项目列表(来自用户 id 数组)firebase 实时数据库
- python - 为什么我的错误排在第一位,而打印语句在 python 中排在第二位?
- java - 我可以将 Enum 中的重写方法移动到一个类中吗
- clojure - Clojure 无法解析 repl 中的符号
- javafx - 无法在 javafx 中的 tableview 中添加新行