第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何使用在本地系統(tǒng)上運行的 Spring Boot 應(yīng)用程序連接到 AWS 上的 DynamoDB?

如何使用在本地系統(tǒng)上運行的 Spring Boot 應(yīng)用程序連接到 AWS 上的 DynamoDB?

湖上湖 2022-08-17 16:09:03
我正在開發(fā)基于Spring Boot微服務(wù)REST的應(yīng)用程序,并且backedn數(shù)據(jù)庫目前是本地Dynamodb數(shù)據(jù)庫。我可以使用Postman對本地運行的應(yīng)用程序進行REST調(diào)用,并且可以使用本地dynamodb數(shù)據(jù)庫執(zhí)行CRUD操作?,F(xiàn)在,我想對配置進行更改,以便每當(dāng)我對本地運行的應(yīng)用程序執(zhí)行類似的 CRUD 操作時,數(shù)據(jù)都應(yīng)保存在/更新在 AWS 上運行的實際 DynamoDB 上,而不是本地?;旧希蚁雽?yīng)用程序指向遠程 DynamoDB 終端節(jié)點??赡軉??是否有任何示例參考指南可用于進行此類配置更改?目前,這是我的配置類和屬性文件:-package com.user.profile.jpa;import com.amazonaws.auth.AWSCredentials;import com.amazonaws.auth.BasicAWSCredentials;import com.amazonaws.client.builder.AwsClientBuilder;import com.amazonaws.services.dynamodbv2.AmazonDynamoDB;import com.amazonaws.services.dynamodbv2.AmazonDynamoDBClient;import com.amazonaws.services.dynamodbv2.AmazonDynamoDBClientBuilder;import com.amazonaws.services.dynamodbv2.document.DynamoDB;import com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBMapper;import com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBMapperConfig;import com.amazonaws.util.StringUtils;import org.socialsignin.spring.data.dynamodb.repository.config.EnableDynamoDBRepositories;import org.springframework.beans.factory.annotation.Value;import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.Configuration;import org.springframework.context.annotation.Profile;//@Profile("dev")@Configuration@EnableDynamoDBRepositories(basePackages = "com.user.profile.jpa")public class DynamoDbConfig {    @Value("${amazon.dynamodb.endpoint}")    private String amazonDynamoDBEndpoint;    @Value("${amazon.dynamodb.region}")    private String amazonDynamoDBRegion;    @Value("${amazon.aws.accesskey}")    private String accessKey;    @Value("${amazon.aws.secretkey}")    private String secretKey;    @Bean    public AmazonDynamoDB amazonDynamoDB() {        AmazonDynamoDB dynamoDB = new AmazonDynamoDBClient(amazonAWSCredentials());        if (!StringUtils.isNullOrEmpty(amazonDynamoDBEndpoint)) {            dynamoDB.setEndpoint(amazonDynamoDBEndpoint);        }        return dynamoDB;    }
查看完整描述

3 回答

?
慕桂英546537

TA貢獻1848條經(jīng)驗 獲得超10個贊

您是否嘗試過將 dynamoDB 終端節(jié)點設(shè)置為正確的系統(tǒng),請參閱 https://docs.aws.amazon.com/general/latest/gr/rande.html。

在您的情況下,它可能是.dynamodb.us-east-1.amazonaws.com

您也可以使用正確的訪問密鑰和秘密訪問密鑰。


查看完整回答
反對 回復(fù) 2022-08-17
?
繁星淼淼

TA貢獻1775條經(jīng)驗 獲得超11個贊

只需更改端點(對于遠程數(shù)據(jù)庫為空)和憑據(jù)/密鑰:


amazon.dynamodb.endpoint=[leave empty if using AWS, or http://localhost:[dynamodb port] if using local ]

amazon.aws.accesskey=[your AWS access key if using AWS or arbitrary text if using local]

amazon.aws.secretkey=[your AWS secret key if using AWS or arbitrary text if using local]

這里有一些例子:https://tech.smartling.com/getting-started-with-amazon-dynamodb-and-java-universal-language-850fa1c8a902


查看完整回答
反對 回復(fù) 2022-08-17
?
胡說叔叔

TA貢獻1804條經(jīng)驗 獲得超8個贊

要從本地系統(tǒng)連接到 AWS 上的 DynamoDB,請使用以下配置。下面的示例連接到US_EAST_1區(qū)域。替換為運行 DynamoDb 的 aws 區(qū)域。


@Configuration

@EnableDynamoDBRepositories(basePackageClasses = YourRepository.class)

public class DynamoDBConfiguration {


    @Value("${aws.access.key}")

    private String awsAccessKey;

    

    @Value("${aws.secret.key}")

    private String awsSecretKey;


    @Bean

    public AmazonDynamoDB amazonDynamoDB() {

        return AmazonDynamoDBClientBuilder.standard()

            .withCredentials(awsCredentialsProvider())

            .withRegion(Regions.US_EAST_1).build();

    }

    

    private AWSCredentialsProvider awsCredentialsProvider(){

        return new AWSStaticCredentialsProvider(

               new BasicAWSCredentials(awsAccessKey, awsSecretKey));

    }


}

將以下屬性添加到應(yīng)用程序.properties 中


aws.access.key = <YOUR_AWS_ACCESS_KEY>

aws.secret.key = <YOUR_AWS_SECRET_KEY>

注意:僅當(dāng)您的 IAM 角色有權(quán)使用上述憑證訪問服務(wù)時,上述代碼才有效。


如果要在 aws EC2 實例中部署微服務(wù),則就像在 aws 中使用 DynamoDB 訪問一樣。在大多數(shù)情況下,它將在同一個aws賬戶和同一個aws區(qū)域中使用。在這種情況下,您無需提供任何詳細信息。請參閱下面的配置類。這就是你所需要的。


import org.socialsignin.spring.data.dynamodb.repository.config.EnableDynamoDBRepositories;

import org.springframework.context.annotation.Bean;

import org.springframework.context.annotation.Configuration;


import com.amazonaws.services.dynamodbv2.AmazonDynamoDB;

import com.amazonaws.services.dynamodbv2.AmazonDynamoDBClientBuilder;

import com.company.project.dao.YourRepository;


@Configuration

@EnableDynamoDBRepositories(basePackageClasses = YourRepository.class)

public class DynamoDBConfiguration {

    

    @Bean

    public AmazonDynamoDB amazonDynamoDB() {

        return AmazonDynamoDBClientBuilder.standard().build();

    }


}

但是,當(dāng)區(qū)域更改時,您必須在配置中傳遞區(qū)域值,如下所示。


@Configuration

@EnableDynamoDBRepositories(basePackageClasses = YourRepository.class)

public class DynamoDBConfiguration {


    @Bean

    public AmazonDynamoDB amazonDynamoDB() {

        return AmazonDynamoDBClientBuilder.standard()

            .withRegion(Regions.US_EAST_1).build();

    }


}

關(guān)于授權(quán),不需要訪問密鑰和密鑰。必須在 EC2 端配置 IAM 角色才能訪問 DynamoDB 實例。


查看完整回答
反對 回復(fù) 2022-08-17
  • 3 回答
  • 0 關(guān)注
  • 224 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號