util.dynamodb 中的 DynamoDB 帮助程序 - Amazon AppSync
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

util.dynamodb 中的 DynamoDB 帮助程序

util.dynamodb 包含一些帮助程序方法,可以更轻松地在 Amazon DynamoDB 中写入和读取数据,例如自动类型映射和格式设置。

toDynamoDB

util.dynamodb.toDynamoDB(Object)

DynamoDB 的常规对象转换工具,可以将输入对象转换为相应的 DynamoDB 表示形式。表示某些类型的方式是自主的:例如,使用列表 ("L") 而不使用集 ("SS", "NS", "BS")。这会返回一个描述 DynamoDB 属性值的对象。

字符串示例

Input: util.dynamodb.toDynamoDB("foo") Output: { "S" : "foo" }

数字示例

Input: util.dynamodb.toDynamoDB(12345) Output: { "N" : 12345 }

布尔值示例

Input: util.dynamodb.toDynamoDB(true) Output: { "BOOL" : true }

列表示例

Input: util.dynamodb.toDynamoDB([ "foo", 123, { "bar" : "baz" } ]) Output: { "L" : [ { "S" : "foo" }, { "N" : 123 }, { "M" : { "bar" : { "S" : "baz" } } } ] }

映射示例

Input: util.dynamodb.toDynamoDB({ "foo": "bar", "baz" : 1234, "beep": [ "boop"] }) Output: { "M" : { "foo" : { "S" : "bar" }, "baz" : { "N" : 1234 }, "beep" : { "L" : [ { "S" : "boop" } ] } } }

toString 实用程序

util.dynamodb.toString(String)

将输入字符串转换为 DynamoDB 字符串格式。这会返回一个描述 DynamoDB 属性值的对象。

Input: util.dynamodb.toString("foo") Output: { "S" : "foo" }
util.dynamodb.toStringSet(List<String>)

将包含字符串的列表转换为 DynamoDB 字符串集格式。这会返回一个描述 DynamoDB 属性值的对象。

Input: util.dynamodb.toStringSet([ "foo", "bar", "baz" ]) Output: { "SS" : [ "foo", "bar", "baz" ] }

toNumber 实用程序

util.dynamodb.toNumber(Number)

将数字转换为 DynamoDB 数字格式。这会返回一个描述 DynamoDB 属性值的对象。

Input: util.dynamodb.toNumber(12345) Output: { "N" : 12345 }
util.dynamodb.toNumberSet(List<Number>)

将数字列表转换为 DynamoDB 数字集格式。这会返回一个描述 DynamoDB 属性值的对象。

Input: util.dynamodb.toNumberSet([ 1, 23, 4.56 ]) Output: { "NS" : [ 1, 23, 4.56 ] }

toBinary 实用程序

util.dynamodb.toBinary(String)

将编码为 Base64 字符串的二进制数据转换为 DynamoDB 二进制格式。这会返回一个描述 DynamoDB 属性值的对象。

Input: util.dynamodb.toBinary("foo") Output: { "B" : "foo" }
util.dynamodb.toBinarySet(List<String>)

将编码为 Base64 字符串的二进制数据列表转换为 DynamoDB 二进制集格式。这会返回一个描述 DynamoDB 属性值的对象。

Input: util.dynamodb.toBinarySet([ "foo", "bar", "baz" ]) Output: { "BS" : [ "foo", "bar", "baz" ] }

toBoolean 实用程序

util.dynamodb.toBoolean(Boolean)

将布尔值转换为相应的 DynamoDB 布尔值格式。这会返回一个描述 DynamoDB 属性值的对象。

Input: util.dynamodb.toBoolean(true) Output: { "BOOL" : true }

toNull 实用程序

util.dynamodb.toNull()

使用 DynamoDB Null 格式返回 Null。这会返回一个描述 DynamoDB 属性值的对象。

Input: util.dynamodb.toNull() Output: { "NULL" : null }

toList 实用程序

util.dynamodb.toList(List)

将对象列表转换为 DynamoDB 列表格式。列表中的每个项目也会转换为相应的 DynamoDB 格式。表示某些嵌套对象的方式是自主的:例如,使用列表 ("L") 而不使用集 ("SS", "NS", "BS")。这会返回一个描述 DynamoDB 属性值的对象。

Input: util.dynamodb.toList([ "foo", 123, { "bar" : "baz" } ]) Output: { "L" : [ { "S" : "foo" }, { "N" : 123 }, { "M" : { "bar" : { "S" : "baz" } } } ] }

toMap 实用程序

util.dynamodb.toMap(Map)

将映射转换为 DynamoDB 映射格式。映射中的每个值也会转换为相应的 DynamoDB 格式。表示某些嵌套对象的方式是自主的:例如,使用列表 ("L") 而不使用集 ("SS", "NS", "BS")。这会返回一个描述 DynamoDB 属性值的对象。

Input: util.dynamodb.toMap({ "foo": "bar", "baz" : 1234, "beep": [ "boop"] }) Output: { "M" : { "foo" : { "S" : "bar" }, "baz" : { "N" : 1234 }, "beep" : { "L" : [ { "S" : "boop" } ] } } }
util.dynamodb.toMapValues(Map)

创建映射的副本,其中每个值都已转换为相应的 DynamoDB 格式。表示某些嵌套对象的方式是自主的:例如,使用列表 ("L") 而不使用集 ("SS", "NS", "BS")。

Input: util.dynamodb.toMapValues({ "foo": "bar", "baz" : 1234, "beep": [ "boop"] }) Output: { "foo" : { "S" : "bar" }, "baz" : { "N" : 1234 }, "beep" : { "L" : [ { "S" : "boop" } ] } }
注意

这与 util.dynamodb.toMap(Map) 略有不同,因为它仅返回 DynamoDB 属性值内容,而不返回整个属性值本身。例如,以下语句是完全相同的:

util.dynamodb.toMapValues(<map>) util.dynamodb.toMap(<map>)("M")

S3Object 实用程序

util.dynamodb.toS3Object(String key, String bucket, String region)

将键、存储桶和区域转换为 DynamoDB S3 对象表示形式。这会返回一个描述 DynamoDB 属性值的对象。

Input: util.dynamodb.toS3Object("foo", "bar", region = "baz") Output: { "S" : "{ \"s3\" : { \"key\" : \"foo", \"bucket\" : \"bar", \"region\" : \"baz" } }" }
util.dynamodb.toS3Object(String key, String bucket, String region, String version)

将键、存储桶、区域和可选版本转换为 DynamoDB S3 对象表示形式。这会返回一个描述 DynamoDB 属性值的对象。

Input: util.dynamodb.toS3Object("foo", "bar", "baz", "beep") Output: { "S" : "{ \"s3\" : { \"key\" : \"foo\", \"bucket\" : \"bar\", \"region\" : \"baz\", \"version\" = \"beep\" } }" }
util.dynamodb.fromS3ObjectJson(String)

接受 DynamoDB S3 对象的字符串值,并返回包含键、存储桶、区域和可选版本的映射。

Input: util.dynamodb.fromS3ObjectJson({ "S" : "{ \"s3\" : { \"key\" : \"foo\", \"bucket\" : \"bar\", \"region\" : \"baz\", \"version\" = \"beep\" } }" }) Output: { "key" : "foo", "bucket" : "bar", "region" : "baz", "version" : "beep" }