簡體   English   中英

通過Amazonica或Cognitect AWS API連接到進程內DynamoDBLocal嗎?

[英]Connect to in-process DynamoDBLocal via Amazonica or Cognitect AWS API?

現在的情況:

Clojure代碼-> Amazonica-> AWS Java SDK-> Standalone DynamoDBLocal.jar通過HTTP在后台進程中。

期望的情況:

Clojure代碼-> Amazonica-> AWS Java SDK->進程內DynamoDB本地

我設法使進程內DynamoDB正常工作,我可以列出表(見下文),但是我不知道如何連接到它。

我嘗試查看AWS Java SDK文檔和示例。 蟋蟀。

Amazonica 文檔僅顯示:endpoint "http://localhost:8000"選項(我目前正在使用它)。

Cognitect的AWS API似乎也通過:endpoint-override僅支持HTTP版本。

我正在努力實現的目標是否可能?

這是到目前為止我得到的代碼:

(import '(com.amazonaws.services.dynamodbv2.local.embedded DynamoDBEmbedded))
(.. DynamoDBEmbedded create amazonDynamoDB listTables)
=> #object[com.amazonaws.services.dynamodbv2.model.ListTablesResult 
   0x712e68f7 "{TableNames: [],}"]

除了依賴關系本身,我還必須在deps.edn中的別名中添​​加以下內容

:jvm-opts ["-Djava.library.path=./DynamoDBLocal_lib"]

其中DynamoDBLocal_lib包含本機庫:libsqlite4java-osx.dylib / libsqlite4java-linux-amd64.so / sqlite4java-win32-x64.dll

PS我不想使用Docker

您是否嘗試過DynamoDBEmbedded

AmazonDynamoDB dynamodb = DynamoDBEmbedded.create().amazonDynamoDB();

for(String table : dynamodb.listTables().getTableNames()) {
    System.out.println(table);
}

dynamodb.shutdown();

你可以找到一個傻瓜代碼列表在這里 ,在aws-dynamodb-examples在GitHub上回購。 是另一個帶有代碼示例的博客文章。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM