Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Verwenden eines Cassandra-Java-Client-Treibers für den programmgesteuerten Zugriff auf Amazon Keyspaces
In diesem Abschnitt erfahren Sie, wie Sie mithilfe eines Java-Client-Treibers eine Verbindung zu Amazon Keyspaces herstellen.
Anmerkung
Java 17 und der DataStax Java-Treiber 4.17 werden derzeit nur in der Betaversion unterstützt. Weitere Informationen finden Sie unter https://docs.datastax.com/en/developer/java-driver/4.17/upgrade_guide/
Um Benutzern und Anwendungen Anmeldeinformationen für den programmatischen Zugriff auf Amazon Keyspaces-Ressourcen zur Verfügung zu stellen, können Sie einen der folgenden Schritte ausführen:
-
Erstellen Sie dienstspezifische Anmeldeinformationen, die einem bestimmten Benutzer AWS Identity and Access Management () IAM zugeordnet sind.
-
Aus Sicherheitsgründen empfehlen wir, IAM Zugriffsschlüssel für IAM Identitäten zu erstellen, die für alle AWS Dienste verwendet werden. Das Amazon Keyspaces SigV4-Authentifizierungs-Plugin für Cassandra-Client-Treiber ermöglicht es Ihnen, Anrufe an Amazon Keyspaces mithilfe von IAM Zugriffsschlüsseln anstelle von Benutzername und Passwort zu authentifizieren. Weitere Informationen finden Sie unter Erstellen und Konfigurieren AWS Anmeldeinformationen für Amazon Keyspaces.
Anmerkung
Ein Beispiel für die Verwendung von Amazon Keyspaces mit Spring Boot finden Sie unterhttps://github.com/aws-samples/amazon-keyspaces-examples/tree/main/java/datastax-v4/spring
Themen
- Bevor Sie beginnen
- Step-by-step Tutorial zum Herstellen einer Verbindung zu Amazon Keyspaces mithilfe des DataStax Java-Treibers für Apache Cassandra mit dienstspezifischen Anmeldeinformationen
- Step-by-step Tutorial zum Herstellen einer Verbindung zu Amazon Keyspaces mithilfe des DataStax 4.x-Java-Treibers für Apache Cassandra und des SigV4-Authentifizierungs-Plug-ins
- Stellen Sie mithilfe des DataStax 3.x-Java-Treibers für Apache Cassandra und des SigV4-Authentifizierungs-Plug-ins eine Connect zu Amazon Keyspaces her
Bevor Sie beginnen
Um eine Verbindung zu Amazon Keyspaces herzustellen, müssen Sie die folgenden Aufgaben ausführen, bevor Sie beginnen können.
Amazon Keyspaces erfordert die Verwendung von Transport Layer Security (TLS), um Verbindungen mit Clients zu sichern.
Laden Sie das digitale Starfield-Zertifikat mit dem folgenden Befehl herunter und speichern Sie es
sf-class2-root.crt
lokal oder in Ihrem Home-Verzeichnis.curl https://certs.secureserver.net/repository/sf-class2-root.crt -O
Anmerkung
Sie können das digitale Amazon-Zertifikat auch verwenden, um eine Verbindung zu Amazon Keyspaces herzustellen, und Sie können dies auch weiterhin tun, wenn Ihr Kunde erfolgreich eine Verbindung zu Amazon Keyspaces herstellt. Das Starfield-Zertifikat bietet zusätzliche Abwärtskompatibilität für Kunden, die ältere Zertifizierungsstellen verwenden.
Konvertiert das digitale Starfield-Zertifikat in eine Datei. trustStore
openssl x509 -outform der -in sf-class2-root.crt -out temp_file.der keytool -import -alias cassandra -keystore cassandra_truststore.jks -file temp_file.der
In diesem Schritt müssen Sie ein Passwort für den Keystore erstellen und diesem Zertifikat vertrauen. Der interaktive Befehl sieht so aus.
Enter keystore password: Re-enter new password: Owner: OU=Starfield Class 2 Certification Authority, O="Starfield Technologies, Inc.", C=US Issuer: OU=Starfield Class 2 Certification Authority, O="Starfield Technologies, Inc.", C=US Serial number: 0 Valid from: Tue Jun 29 17:39:16 UTC 2004 until: Thu Jun 29 17:39:16 UTC 2034 Certificate fingerprints: MD5: 32:4A:4B:BB:C8:63:69:9B:BE:74:9A:C6:DD:1D:46:24 SHA1: AD:7E:1C:28:B0:64:EF:8F:60:03:40:20:14:C3:D0:E3:37:0E:B5:8A SHA256: 14:65:FA:20:53:97:B8:76:FA:A6:F0:A9:95:8E:55:90:E4:0F:CC:7F:AA:4F:B7:C2:C8:67:75:21:FB:5F:B6:58 Signature algorithm name: SHA1withRSA Subject Public Key Algorithm: 2048-bit RSA key Version: 3 Extensions: #1: ObjectId: 2.5.29.35 Criticality=false AuthorityKeyIdentifier [ KeyIdentifier [ 0000: BF 5F B7 D1 CE DD 1F 86 F4 5B 55 AC DC D7 10 C2 ._.......[U..... 0010: 0E A9 88 E7 .... ] [OU=Starfield Class 2 Certification Authority, O="Starfield Technologies, Inc.", C=US] SerialNumber: [ 00] ] #2: ObjectId: 2.5.29.19 Criticality=false BasicConstraints:[ CA:true PathLen:2147483647 ] #3: ObjectId: 2.5.29.14 Criticality=false SubjectKeyIdentifier [ KeyIdentifier [ 0000: BF 5F B7 D1 CE DD 1F 86 F4 5B 55 AC DC D7 10 C2 ._.......[U..... 0010: 0E A9 88 E7 .... ] ] Trust this certificate? [no]: y
-
Hängen Sie die trustStore Datei in den JVM Argumenten an:
-Djavax.net.ssl.trustStore=
path_to_file
/cassandra_truststore.jks -Djavax.net.ssl.trustStorePassword=my_password
Step-by-step Tutorial zum Herstellen einer Verbindung zu Amazon Keyspaces mithilfe des DataStax Java-Treibers für Apache Cassandra mit dienstspezifischen Anmeldeinformationen
Das folgende step-by-step Tutorial führt Sie durch die Herstellung einer Verbindung zu Amazon Keyspaces mithilfe eines Java-Treibers für Cassandra mit dienstspezifischen Anmeldeinformationen. Insbesondere verwenden Sie die 4.0-Version des DataStax Java-Treibers für Apache Cassandra.
Themen
Schritt 1: Voraussetzungen
Um diesem Tutorial zu folgen, müssen Sie dienstspezifische Anmeldeinformationen generieren und den DataStax Java-Treiber für Apache Cassandra zu Ihrem Java-Projekt hinzufügen.
Generieren Sie dienstspezifische Anmeldeinformationen für Ihren Amazon IAM Keyspaces-Benutzer, indem Sie die unter aufgeführten Schritte ausführen. Dienstspezifische Anmeldeinformationen für den programmatischen Zugriff auf Amazon Keyspaces erstellen Wenn Sie es vorziehen, IAM Zugangsschlüssel für die Authentifizierung zu verwenden, finden Sie weitere Informationen unter. Step-by-step Tutorial zum Herstellen einer Verbindung zu Amazon Keyspaces mithilfe des DataStax 4.x-Java-Treibers für Apache Cassandra und des SigV4-Authentifizierungs-Plug-ins
Fügen Sie den DataStax Java-Treiber für Apache Cassandra zu Ihrem Java-Projekt hinzu. Stellen Sie sicher, dass Sie eine Version des Treibers verwenden, die Apache Cassandra 3.11.2 unterstützt. Weitere Informationen finden Sie in der Dokumentation zum DataStax Java-Treiber für Apache Cassandra
.
Schritt 2: Konfigurieren Sie den Treiber
Sie können Einstellungen für den DataStax Java-Cassandra-Treiber angeben, indem Sie eine Konfigurationsdatei für Ihre Anwendung erstellen. Diese Konfigurationsdatei überschreibt die Standardeinstellungen und weist den Treiber an, über Port 9142 eine Verbindung zum Amazon Keyspaces-Serviceendpunkt herzustellen. Eine Liste der verfügbaren Service-Endpunkte finden Sie unter. Service-Endpunkte für Amazon Keyspaces
Erstellen Sie eine Konfigurationsdatei und speichern Sie die Datei im Ressourcenordner der Anwendung, z. B. src/main/resources/application.conf
Öffnen Sie die folgenden application.conf
Konfigurationseinstellungen und fügen Sie sie hinzu.
Authentifizierungsanbieter — Erstellen Sie den Authentifizierungsanbieter mit der
PlainTextAuthProvider
Klasse.ServiceUserName
andServicePassword
sollte mit dem Benutzernamen und dem Passwort übereinstimmen, die Sie bei der Generierung der dienstspezifischen Anmeldeinformationen erhalten haben, indem Sie die Schritte unter befolgen. Dienstspezifische Anmeldeinformationen für den programmatischen Zugriff auf Amazon Keyspaces erstellenAnmerkung
Sie können kurzfristige Anmeldeinformationen verwenden, indem Sie das Authentifizierungs-Plug-In für den DataStax Java-Treiber für Apache Cassandra verwenden, anstatt die Anmeldeinformationen in Ihrer Treiberkonfigurationsdatei fest zu codieren. Um mehr zu erfahren, folgen Sie den Anweisungen für. Step-by-step Tutorial zum Herstellen einer Verbindung zu Amazon Keyspaces mithilfe des DataStax 4.x-Java-Treibers für Apache Cassandra und des SigV4-Authentifizierungs-Plug-ins
Lokales Rechenzentrum — Stellen Sie den Wert für
local-datacenter
die Region ein, mit der Sie eine Verbindung herstellen. Wenn die Anwendung beispielsweise eine Verbindung herstelltcassandra.us-east-2.amazonaws.com
, legen Sie das lokale Rechenzentrum auf festus-east-2
. Alle verfügbaren AWS-Regionen Informationen finden Sie unterService-Endpunkte für Amazon Keyspaces. Aufslow-replica-avoidance = false
Lastenausgleich für weniger Knoten eingestellt.SSL/TLS— Initialisieren Sie das, SSLEngineFactory indem Sie der Konfigurationsdatei einen Abschnitt mit einer einzigen Zeile hinzufügen, die die Klasse mit
class = DefaultSslEngineFactory
spezifiziert. Geben Sie den Pfad zur trustStore Datei und das Passwort an, das Sie zuvor erstellt haben. Amazon Keyspaces unterstützt keinehostname-validation
Peers, setzen Sie diese Option daher auf False.
datastax-java-driver { basic.contact-points = [ "
cassandra.us-east-2.amazonaws.com
:9142"] advanced.auth-provider{ class = PlainTextAuthProvider username ="ServiceUserName"
password ="ServicePassword"
} basic.load-balancing-policy { local-datacenter ="us-east-2"
slow-replica-avoidance = false } advanced.ssl-engine-factory { class = DefaultSslEngineFactory truststore-path ="./src/main/resources/cassandra_truststore.jks"
truststore-password ="my_password"
hostname-validation = false } }
Anmerkung
Anstatt den Pfad trustStore in der Konfigurationsdatei hinzuzufügen, können Sie den trustStore Pfad auch direkt im Anwendungscode hinzufügen oder Sie können den Pfad trustStore zu den JVM Argumenten hinzufügen.
Schritt 3: Führen Sie die Beispielanwendung aus
Dieses Codebeispiel zeigt eine einfache Befehlszeilenanwendung, die mithilfe der zuvor erstellten Konfigurationsdatei einen Verbindungspool zu Amazon Keyspaces erstellt. Es bestätigt, dass die Verbindung hergestellt wurde, indem eine einfache Abfrage ausgeführt wird.
package
<your package>
; // add the following imports to your project import com.datastax.oss.driver.api.core.CqlSession; import com.datastax.oss.driver.api.core.config.DriverConfigLoader; import com.datastax.oss.driver.api.core.cql.ResultSet; import com.datastax.oss.driver.api.core.cql.Row; public class App { public static void main( String[] args ) { //Use DriverConfigLoader to load your configuration file DriverConfigLoader loader = DriverConfigLoader.fromClasspath("application.conf"); try (CqlSession session = CqlSession.builder() .withConfigLoader(loader) .build()) { ResultSet rs = session.execute("select * from system_schema.keyspaces"); Row row = rs.one(); System.out.println(row.getString("keyspace_name")); } } }
Anmerkung
Verwenden Sie einen try
Block, um die Verbindung herzustellen, um sicherzustellen, dass sie immer geschlossen ist. Wenn Sie keinen try
Block verwenden, denken Sie daran, Ihre Verbindung zu schließen, um zu vermeiden, dass Ressourcen verloren gehen.
Step-by-step Tutorial zum Herstellen einer Verbindung zu Amazon Keyspaces mithilfe des DataStax 4.x-Java-Treibers für Apache Cassandra und des SigV4-Authentifizierungs-Plug-ins
Im folgenden Abschnitt wird beschrieben, wie Sie das SigV4-Authentifizierungs-Plugin für den DataStax Open-Source-4.x-Java-Treiber für Apache Cassandra verwenden, um auf Amazon Keyspaces (für Apache Cassandra) zuzugreifen. Das Plugin ist im Repository verfügbar. GitHub
Das SigV4-Authentifizierungs-Plugin ermöglicht es Ihnen, IAM Anmeldeinformationen für Benutzer oder Rollen zu verwenden, wenn Sie eine Verbindung zu Amazon Keyspaces herstellen. Anstatt einen Benutzernamen und ein Passwort zu benötigen, signiert dieses Plugin API Anfragen mit Zugriffsschlüsseln. Weitere Informationen finden Sie unter Erstellen und Konfigurieren AWS Anmeldeinformationen für Amazon Keyspaces.
Schritt 1: Voraussetzungen
Um diesem Tutorial zu folgen, müssen Sie die folgenden Aufgaben ausführen.
Falls Sie dies noch nicht getan haben, erstellen Sie Anmeldeinformationen für Ihren IAM Benutzer oder Ihre Rolle, indem Sie die Schritte unter befolgenErstellen und Konfigurieren AWS Anmeldeinformationen für Amazon Keyspaces. In dieser Anleitung wird davon ausgegangen, dass die Zugriffsschlüssel als Umgebungsvariablen gespeichert sind. Weitere Informationen finden Sie unter Speichern Sie Zugriffsschlüssel für Benutzer IAM.
Fügen Sie den DataStax Java-Treiber für Apache Cassandra zu Ihrem Java-Projekt hinzu. Stellen Sie sicher, dass Sie eine Version des Treibers verwenden, die Apache Cassandra 3.11.2 unterstützt. Weitere Informationen finden Sie in der Dokumentation zum DataStax Java-Treiber für Apache Cassandra
. Fügen Sie das Authentifizierungs-Plugin zu Ihrer Anwendung hinzu. Das Authentifizierungs-Plugin unterstützt Version 4.x des DataStax Java-Treibers für Apache Cassandra. Wenn Sie Apache Maven oder ein Build-System verwenden, das Maven-Abhängigkeiten verwenden kann, fügen Sie Ihrer Datei die folgenden Abhängigkeiten hinzu.
pom.xml
Wichtig
<dependency> <groupId>software.aws.mcs</groupId> <artifactId>aws-sigv4-auth-cassandra-java-driver-plugin</artifactId> <version>
4.0.9
</version> </dependency>
Schritt 2: Konfigurieren Sie den Treiber
Sie können Einstellungen für den DataStax Java-Cassandra-Treiber angeben, indem Sie eine Konfigurationsdatei für Ihre Anwendung erstellen. Diese Konfigurationsdatei überschreibt die Standardeinstellungen und weist den Treiber an, über Port 9142 eine Verbindung zum Amazon Keyspaces-Serviceendpunkt herzustellen. Eine Liste der verfügbaren Service-Endpunkte finden Sie unter. Service-Endpunkte für Amazon Keyspaces
Erstellen Sie eine Konfigurationsdatei und speichern Sie die Datei im Ressourcenordner der Anwendung, z. B. src/main/resources/application.conf
Öffnen Sie die folgenden application.conf
Konfigurationseinstellungen und fügen Sie sie hinzu.
Authentifizierungsanbieter — Legen Sie
advanced.auth-provider.class
für eine neue Instanz von festsoftware.aws.mcs.auth.SigV4AuthProvider
. Der SigV4 AuthProvider ist der Authentifizierungshandler, der vom Plugin für die Durchführung der SigV4-Authentifizierung bereitgestellt wird.Lokales Rechenzentrum — Stellen Sie den Wert für die Region ein
local-datacenter
, zu der Sie eine Verbindung herstellen. Wenn die Anwendung beispielsweise eine Verbindung herstelltcassandra.us-east-2.amazonaws.com
, legen Sie das lokale Rechenzentrum auf festus-east-2
. Alle verfügbaren AWS-Regionen Informationen finden Sie unterService-Endpunkte für Amazon Keyspaces. Stelltslow-replica-avoidance = false
den Lastenausgleich für alle verfügbaren Knoten ein.Idempotenz — Legen Sie als Standardeinstellung
idempotence
für die Anwendung fest, dass der Treiber so konfiguriert wird, dasstrue
fehlgeschlagene Anfragen beim Lesen/Schreiben/Vorbereiten/Ausführen immer wiederholt werden. Dies ist eine bewährte Methode für verteilte Anwendungen, mit der vorübergehende Fehler behoben werden können, indem fehlgeschlagene Anfragen wiederholt werden.SSL/TLS— Initialisieren Sie das, SSLEngineFactory indem Sie der Konfigurationsdatei einen Abschnitt mit einer einzigen Zeile hinzufügen, die die Klasse mit spezifiziert.
class = DefaultSslEngineFactory
Geben Sie den Pfad zur trustStore Datei und das Passwort an, das Sie zuvor erstellt haben. Amazon Keyspaces unterstützt keinehostname-validation
Peers, setzen Sie diese Option daher auf False.Verbindungen — Erstellen Sie mindestens 3 lokale Verbindungen pro Endpunkt, indem Sie diese Einstellung
local.size = 3
vornehmen. Dies ist eine bewährte Methode, die Ihrer Anwendung hilft, Overhead und Datenverkehrsspitzen zu bewältigen. Weitere Informationen darüber, wie Sie anhand der erwarteten Datenverkehrsmuster berechnen können, wie viele lokale Verbindungen pro Endpunkt Ihre Anwendung benötigt, finden Sie unterSo konfigurieren Sie Verbindungen in Amazon Keyspaces.Wiederholungsrichtlinie — Implementieren Sie die Amazon Keyspaces-Wiederholungsrichtlinie
AmazonKeyspacesExponentialRetryPolicy
anstelle der imDefaultRetryPolicy
Cassandra-Treiber enthaltenen Richtlinie. Auf diese Weise können Sie die Anzahl der Wiederholungsversuche so konfigurieren, wie es Ihren Anforderungen entspricht.AmazonKeyspacesExponentialRetryPolicy
Standardmäßig ist die Anzahl der Wiederholungsversuche für aufAmazonKeyspacesExponentialRetryPolicy
3 festgelegt. Weitere Informationen finden Sie unter So konfigurieren Sie die Wiederholungsrichtlinie für Verbindungen in Amazon Keyspaces.Vorbereitete Anweisungen — Auf „False“ setzen
prepare-on-all-nodes
, um die Netzwerknutzung zu optimieren.
datastax-java-driver { basic { contact-points = [ "
cassandra.us-east-2.amazonaws.com:9142
"] request { timeout = 2 seconds consistency = LOCAL_QUORUM page-size = 1024 default-idempotence = true } load-balancing-policy { local-datacenter = "us-east-2
" class = DefaultLoadBalancingPolicy slow-replica-avoidance = false } } advanced { auth-provider { class = software.aws.mcs.auth.SigV4AuthProvider aws-region =us-east-2
} ssl-engine-factory { class = DefaultSslEngineFactory truststore-path = "./src/main/resources/cassandra_truststore.jks
" truststore-password = "my_password
" hostname-validation = false } connection { connect-timeout = 5 seconds max-requests-per-connection = 512 pool { local.size = 3 } } retry-policy { class = com.aws.ssa.keyspaces.retry.AmazonKeyspacesExponentialRetryPolicy max-attempts = 3 min-wait = 10 mills max-wait = 100 mills } prepared-statements { prepare-on-all-nodes = false } } }
Anmerkung
Anstatt den Pfad trustStore in der Konfigurationsdatei hinzuzufügen, können Sie den trustStore Pfad auch direkt im Anwendungscode hinzufügen oder Sie können den Pfad trustStore zu den JVM Argumenten hinzufügen.
Schritt 3: Führen Sie die Anwendung aus
Dieses Codebeispiel zeigt eine einfache Befehlszeilenanwendung, die mithilfe der zuvor erstellten Konfigurationsdatei einen Verbindungspool zu Amazon Keyspaces erstellt. Es bestätigt, dass die Verbindung hergestellt wurde, indem eine einfache Abfrage ausgeführt wird.
package
<your package>
; // add the following imports to your project import com.datastax.oss.driver.api.core.CqlSession; import com.datastax.oss.driver.api.core.config.DriverConfigLoader; import com.datastax.oss.driver.api.core.cql.ResultSet; import com.datastax.oss.driver.api.core.cql.Row; public class App { public static void main( String[] args ) { //Use DriverConfigLoader to load your configuration file DriverConfigLoader loader = DriverConfigLoader.fromClasspath("application.conf"); try (CqlSession session = CqlSession.builder() .withConfigLoader(loader) .build()) { ResultSet rs = session.execute("select * from system_schema.keyspaces"); Row row = rs.one(); System.out.println(row.getString("keyspace_name")); } } }
Anmerkung
Verwenden Sie einen try
Block, um die Verbindung herzustellen, um sicherzustellen, dass sie immer geschlossen ist. Wenn Sie keinen try
Block verwenden, denken Sie daran, Ihre Verbindung zu schließen, um zu vermeiden, dass Ressourcen verloren gehen.
Stellen Sie mithilfe des DataStax 3.x-Java-Treibers für Apache Cassandra und des SigV4-Authentifizierungs-Plug-ins eine Connect zu Amazon Keyspaces her
Im folgenden Abschnitt wird beschrieben, wie Sie das SigV4-Authentifizierungs-Plugin für den DataStax 3.x-Open-Source-Java-Treiber für Apache Cassandra für den Zugriff auf Amazon Keyspaces verwenden. Das Plugin ist im Repository verfügbar. GitHub
Das SigV4-Authentifizierungs-Plugin ermöglicht es Ihnen, IAM Anmeldeinformationen für Benutzer und Rollen zu verwenden, wenn Sie eine Verbindung zu Amazon Keyspaces herstellen. Anstatt einen Benutzernamen und ein Passwort zu benötigen, signiert dieses Plugin API Anfragen mit Zugriffsschlüsseln. Weitere Informationen finden Sie unter Erstellen und Konfigurieren AWS Anmeldeinformationen für Amazon Keyspaces.
Schritt 1: Voraussetzungen
Um dieses Codebeispiel auszuführen, müssen Sie zunächst die folgenden Aufgaben ausführen.
Erstellen Sie Anmeldeinformationen für Ihren IAM Benutzer oder Ihre Rolle, indem Sie die Schritte unter befolgenErstellen und Konfigurieren AWS Anmeldeinformationen für Amazon Keyspaces. In dieser Anleitung wird davon ausgegangen, dass die Zugriffsschlüssel als Umgebungsvariablen gespeichert sind. Weitere Informationen finden Sie unter Speichern Sie Zugriffsschlüssel für Benutzer IAM.
Gehen Sie wie unter beschrieben vor, Bevor Sie beginnen um das digitale Starfield-Zertifikat herunterzuladen, es in eine trustStore Datei zu konvertieren und die trustStore Datei in den JVM Argumenten an Ihre Anwendung anzuhängen.
Fügen Sie Ihrem DataStax Java-Projekt den Java-Treiber für Apache Cassandra hinzu. Stellen Sie sicher, dass Sie eine Version des Treibers verwenden, die Apache Cassandra 3.11.2 unterstützt. Weitere Informationen finden Sie in der Dokumentation zum DataStax Java-Treiber für Apache Cassandra
. Fügen Sie das Authentifizierungs-Plugin zu Ihrer Anwendung hinzu. Das Authentifizierungs-Plugin unterstützt Version 3.x des DataStax Java-Treibers für Apache Cassandra. Wenn Sie Apache Maven oder ein Build-System verwenden, das Maven-Abhängigkeiten verwenden kann, fügen Sie Ihrer Datei die folgenden Abhängigkeiten hinzu.
pom.xml
Ersetzen Sie die Version des Plugins durch die neueste Version, wie im GitHub Repository gezeigt.<dependency> <groupId>software.aws.mcs</groupId> <artifactId>aws-sigv4-auth-cassandra-java-driver-plugin_3</artifactId> <version>
3.0.3
</version> </dependency>
Schritt 2: Führen Sie die Anwendung aus
Dieses Codebeispiel zeigt eine einfache Befehlszeilenanwendung, die einen Verbindungspool zu Amazon Keyspaces erstellt. Es bestätigt, dass die Verbindung hergestellt wurde, indem eine einfache Abfrage ausgeführt wird.
package
<your package>
; // add the following imports to your project import software.aws.mcs.auth.SigV4AuthProvider; import com.datastax.driver.core.Cluster; import com.datastax.driver.core.ResultSet; import com.datastax.driver.core.Row; import com.datastax.driver.core.Session; public class App { public static void main( String[] args ) { String endPoint = "cassandra.us-east-2.amazonaws.com
"; int portNumber = 9142; Session session = Cluster.builder() .addContactPoint(endPoint) .withPort(portNumber) .withAuthProvider(new SigV4AuthProvider("us-east-2
")) .withSSL() .build() .connect(); ResultSet rs = session.execute("select * from system_schema.keyspaces"); Row row = rs.one(); System.out.println(row.getString("keyspace_name")); } }
Hinweise zur Verwendung:
Eine Liste der verfügbaren Endpunkte finden Sie unterService-Endpunkte für Amazon Keyspaces.
Im folgenden Repository finden Sie hilfreiche Java-Treiberrichtlinien, Beispiele und bewährte Methoden für die Verwendung des Java-Treibers mit Amazon Keyspaces:https://github.com/aws-samples/amazon-keyspaces-java-driver-helpers