如何搭配 Azure Cosmos DB for Apache Cassandra 使用 Spring Data
本文示範如何建立使用 Spring Data 來儲存和擷取資訊的範例應用程式,並使用 適用於 Apache Cassandra 的 Azure Cosmos DB。
必要條件
Azure 訂用帳戶 - 建立免費帳戶。
Java Development Kit (JDK)版本 8 或更高版本。
建立 Azure Cosmos DB 帳戶
下列程式會在 Azure 入口網站 中建立及設定 Azure Cosmos DB 帳戶。
使用 Azure 入口網站建立 Azure Cosmos DB 帳戶
注意
您可以在 Azure Cosmos DB 檔中閱讀有關建立帳戶的詳細資訊。
流覽至 Azure 入口網站,https://portal.azure.com/然後登入。
選取 [建立資源],然後 選取 [開始使用],然後選取 [Azure Cosmos DB]。
在 [ 選取 API] 選項 畫面上,選取 [Cassandra]。
指定下列資訊:
- 訂用帳戶:指定要使用的 Azure 訂用帳戶。
- 資源群組:指定是要建立新的資源群組,還是選擇現有的資源群組。
- 帳戶名稱:為您的 Azure Cosmos DB 帳戶選擇唯一名稱;此名稱將用來建立完整功能變數名稱,例如 wingtiptoyscassandra.documents.azure.com。
- API:指定 此教學課程的 Cassandra 。
- 位置:指定資料庫最接近的地理區域。
輸入上述所有資訊后,按兩下 [ 檢閱 + 建立]。
如果檢閱頁面上的所有項目看起來都正確,請按兩下 [ 建立]。
部署資料庫需要幾分鐘的時間。
將keyspace新增至您的 Azure Cosmos DB 帳戶
流覽至 Azure 入口網站,https://portal.azure.com/然後登入。
選取 [所有資源],然後選取您建立的 Azure Cosmos DB 帳戶。
選取 [數據總管],選取向下箭號,然後選取 [ 新增 Keyspace]。 輸入 Keyspace 識別碼的唯一標識符,然後選取 [ 確定]。
擷取 Azure Cosmos DB 帳戶的連線設定
流覽至 Azure 入口網站,https://portal.azure.com/然後登入。
選取 [所有資源],然後選取您建立的 Azure Cosmos DB 帳戶。
選取 [連線 ion 字串],然後複製 [連絡點]、[連接埠]、[使用者名稱] 和 [主要密碼] 字段的值;您稍後會使用這些值來設定您的應用程式。
設定範例應用程式
下列程序會設定測試應用程式。
開啟命令殼層,並使用 git 命令複製範例專案,如下列範例所示:
git clone https://github.com/Azure-Samples/spring-data-cassandra-on-azure.git
在範例專案的 resources 目錄中找出 application.properties 檔案,或如果檔案不存在,請建立檔案。
在文字編輯器中開啟 application.properties 檔案、在檔案中新增或設定下列幾行,然後使用本文稍早的適當值來取代範例值:
spring.data.cassandra.contact-points=wingtiptoyscassandra.cassandra.cosmos.azure.com spring.data.cassandra.port=10350 spring.data.cassandra.username=wingtiptoyscassandra spring.data.cassandra.password=********
其中:
參數 描述 spring.data.cassandra.contact-points
指定本文稍早所述的連絡點。 spring.data.cassandra.port
指定本文稍早所述的連接埠。 spring.data.cassandra.username
指定本文稍早所述的使用者名稱。 spring.data.cassandra.password
指定本文稍早所述的主要密碼。 儲存並關閉 application.properties 檔案。
封裝和測試應用程式範例
流覽至包含pom.xml檔案的目錄,以建置及測試應用程式。
使用 Maven 建置應用程式範例;例如:
mvn clean package
啟動應用程式範例;例如:
java -jar target/spring-data-cassandra-on-azure-0.1.0-SNAPSHOT.jar
從命令提示字元使用
curl
建立新的記錄,如下列範例所示:curl -s -d "{\"name\":\"dog\",\"species\":\"canine\"}" -H "Content-Type: application/json" -X POST http://localhost:8080/pets curl -s -d "{\"name\":\"cat\",\"species\":\"feline\"}" -H "Content-Type: application/json" -X POST http://localhost:8080/pets
您的應用程式應該會傳回類似下列範例的值:
Added Pet{id=60fa8cb0-0423-11e9-9a70-39311962166b, name='dog', species='canine'}. Added Pet{id=72c1c9e0-0423-11e9-9a70-39311962166b, name='cat', species='feline'}.
從命令提示字元使用
curl
擷取所有現有的記錄,如下列範例所示:curl -s http://localhost:8080/pets
您的應用程式應該會傳回值,例如下列範例:
[{"id":"60fa8cb0-0423-11e9-9a70-39311962166b","name":"dog","species":"canine"},{"id":"72c1c9e0-0423-11e9-9a70-39311962166b","name":"cat","species":"feline"}]
摘要
在本教學課程中,您已建立使用 Spring Data 來儲存和擷取資訊的範例 Java 應用程式,並使用適用於 Apache Cassandra 的 Azure Cosmos DB 來儲存和擷取資訊。
清除資源
不再需要時,請使用 Azure 入口網站 來刪除本文中建立的資源,以避免產生非預期的費用。
下一步
若要深入了解 Spring 和 Azure,請繼續閱讀「Azure 上的 Spring」文件中心中的資訊。
另請參閱
如需如何搭配使用 Azure 和 Java 的詳細資訊,請參閱適用於 Java 開發人員的 Azure 和使用 Azure DevOps 和 Java。