Я новичок в AWS и следовал учебному пособию по следующей ссылке Начало работы с DynamoDB SDK Java
Код в учебнике предназначен для создания таблицы в DynamoDB, и яЯ точно скопировал его.
public class MoviesCreateTable {
public static void main(String[] args) throws Exception {
AmazonDynamoDB client = AmazonDynamoDBClientBuilder.standard()
.withEndpointConfiguration(new AwsClientBuilder.EndpointConfiguration("http://localhost:8000", "us-west-2"))
.build();
DynamoDB dynamoDB = new DynamoDB(client);
String tableName = "Movies";
try {
System.out.println("Attempting to create table; please wait...");
Table table = dynamoDB.createTable(tableName,
Arrays.asList(new KeySchemaElement("year", KeyType.HASH), // Partition
// key
new KeySchemaElement("title", KeyType.RANGE)), // Sort key
Arrays.asList(new AttributeDefinition("year", ScalarAttributeType.N),
new AttributeDefinition("title", ScalarAttributeType.S)),
new ProvisionedThroughput(10L, 10L));
table.waitForActive();
System.out.println("Success. Table status: " + table.getDescription().getTableStatus());
}
catch (Exception e) {
System.err.println("Unable to create table: ");
System.err.println(e.getMessage());
}
}
}
Изначально у меня возникла проблема, из-за которой localhost не смог подключиться, и я считаю, что это произошло из-за того, что у меня не было DynamoDB, работающего локально.Я следовал за ответом, найденным здесь Локальная база данных Dynamo - Соединение отклонено
Вам нужно запустить DynamoDB в командной строке.
Перейдите в папку, где находится Dynamodb cliустанавливается и запускает следующую команду
java -Djava.library.path =. / DynamoDBLocal_lib -jar DynamoDBLocal.jar -sharedDb
, чтобы проверить, выполняется ли она http://localhost:8000/shell/
Оболочка сработала, но теперь при запуске программы я не получаю ошибок, и она просто зависает после сообщения
Попытка создать таблицу;пожалуйста, подождите ...
В итоге я получил это:
Невозможно создать таблицу: Невозможно выполнить запрос HTTP: Тайм-аут чтения
Кто-нибудь есть идеи?