Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Spring Boot vereinfacht die Spring Cloud Azure-Entwicklungserfahrung. Spring Cloud Azure Starter sind eine Reihe praktischer Abhängigkeitsdeskriptoren, die in Ihre Anwendung aufgenommen werden sollen. Die Starter übernehmen die Logik für die Objektinstanziierung und -konfiguration, sodass Sie sich nicht darum kümmern müssen. Jeder Start hängt von spring-cloud-azure-starter ab, um wichtige Konfigurationsbits wie die Azure-Cloudumgebung und Authentifizierungsinformationen bereitzustellen. Sie können diese als Eigenschaften in einer YAML-Datei konfigurieren, wie im folgenden Beispiel gezeigt:
spring:
cloud:
azure:
profile:
tenant-id: <tenant>
cloud-type: Azure
credential:
client-id: ${AZURE_CLIENT_ID}
Anmerkung
Die cloud-Eigenschaft ist optional.
Die für tenant-id zulässigen Werte sind: common, organizations, consumersoder die Mandanten-ID. Weitere Informationen zu diesen Werten finden Sie im Abschnitt Falschen Endpunkt verwendet (persönliche Konten und Organisationskonten) in Fehler AADSTS50020 – Benutzerkonto des Identitätsanbieters ist im Mandanten nicht vorhanden. Informationen zum Umwandeln Ihrer Single-Tenant-App finden Sie unter Single-Tenant-App in eine Multitenant-App auf Microsoft Entra ID umwandeln.
Diese Eigenschaften sind optional. Wenn Sie sie nicht angeben, versucht Spring Boot, sie automatisch für Sie zu finden. Ausführliche Informationen dazu, wie Spring Boot diese Eigenschaften findet, finden Sie in der Dokumentation.
Einrichtung von Abhängigkeiten
Sie können Spring Cloud Azure Starter auf zwei Arten verwenden. Die erste Möglichkeit besteht darin, Azure-SDKs mit der spring-cloud-azure-starter Abhängigkeit zu verwenden, wie im folgenden Beispiel gezeigt:
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-cosmos</artifactId>
</dependency>
<dependency>
<groupId>com.azure.spring</groupId>
<artifactId>spring-cloud-azure-starter</artifactId>
</dependency>
Die zweite Möglichkeit besteht darin, das Hinzufügen von Azure SDK Abhängigkeiten zu vermeiden und stattdessen die Spring Cloud Azure Starter für jeden Dienst direkt einzuschließen. Beispielsweise fügen Sie mit Azure Cosmos DB die folgende Abhängigkeit hinzu:
<dependency>
<groupId>com.azure.spring</groupId>
<artifactId>spring-cloud-azure-starter-cosmos</artifactId>
</dependency>
Tipp
Eine Liste der unterstützten Starter finden Sie im Abschnitt Starterabhängigkeiten Abschnitt des Spring Cloud Azure-Entwicklerhandbuchs.
Konfiguration
Anmerkung
Wenn Sie einen Sicherheitsprinzipal zum Authentifizieren und Autorisieren mit Microsoft Entra ID für den Zugriff auf eine Azure Ressource verwenden, stellen Sie sicher, dass der Sicherheitsprinzipal über ausreichende Berechtigungen für den Zugriff auf die Azure Ressource verfügt. Weitere Informationen finden Sie unter Autorisieren des Zugriffs mit microsoft Entra ID.
Konfigurationseigenschaften für jeden Azure Dienst befinden sich unter dem Präfix spring.cloud.azure.<azure-service>.
Tipp
Eine Liste aller Spring Cloud Azure-Konfigurationseigenschaften finden Sie unter Spring Cloud Azure-Konfigurationseigenschaften.
Grundlegende Nutzung
Fügen Sie der Datei application.yaml die folgenden Eigenschaften hinzu, um den Azure Cosmos DB-Client automatisch zu konfigurieren.
spring:
cloud:
azure:
cosmos:
database: ${AZURE_COSMOS_DATABASE_NAME}
endpoint: ${AZURE_COSMOS_ENDPOINT}
consistency-level: eventual
connection-mode: direct
Dann sind beide CosmosClient und CosmosAsyncClient im Kontext verfügbar, und Sie können sie automatisch verkabeln, wie im folgenden Beispiel gezeigt:
class Demo {
@Autowired
private CosmosClient cosmosClient;
@Override
public void run() {
User item = User.randomUser();
CosmosContainer container = cosmosClient.getDatabase(databaseName).getContainer(containerName);
container.createItem(item);
}
}
Proben
Sehen Sie sich das azure-spring-boot-samples Repository auf GitHub an.