Java DynamoDB V2 SDK:使用哪个导入?

问题描述 投票:0回答:2

我正在重新编写一些使用 AWS DynamoDB (DDB) V1 Java 接口的旧 Java 代码(大约 2018 年)。

我想只保留 V2 API 并删除 V1 API,哪怕只是为了精简包,这样我们就不会打包到同一 API 的两个不同版本。

我正在尝试遵循 V2 接口的 Java 指南,但仍然无法确定哪些库是 V1、哪些是 V2。

例如,我可以猜测这是一个新库(“v2”是一个很好的提示):

import com.amazonaws.services.dynamodbv2.model.PutItemRequest;

但是,这不是那么清楚:

import software.amazon.awssdk.services.dynamodb.model.PutItemRequest;

例如,我很确定这是V1:

import software.amazon.awssdk.regions.Region;

但这是V2:

import com.amazonaws.regions.Regions;

这告诉我

software.amazon.awssdk
是 V1 API,但该包名称在 V2 API 指南中使用。

总而言之,我的问题是:哪些库是V1,哪些是V2?

java amazon-web-services amazon-dynamodb
2个回答
2
投票

Java AWS SDK 目前是 v2。最容易识别的是以

software.amazon
开头的包名称,如 Javadoc 中所示。

v1 仍在使用,但不鼓励使用。 v1 的包名称以

com.amazonaws
开头。它的 Javadoc 实际上没有任何已弃用的内容,但对于新代码和/或像您所做的升级,我会选择 v2。

除了 AWS Lambda“服务器端”库(即用于在 Java 中创建 Lambda 的库)之外,v1 的所有功能都应在 v2 中可用。有关详细信息,请参阅迁移指南


0
投票

最近为此浪费了一个下午的时间,这个帖子中的答案救了我。我制作了不同选项的图表来帮助我理解,在这里分享。

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.