Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Utilizzo della libreria client Java per l’API dati
Puoi scaricare e utilizzare una libreria client Java per l’API dati di RDS (API dati). Questa è la libreria client Java fornisce un modo alternativo per utilizzare l’API dati. Utilizzando questa libreria, puoi mappare le tue classi lato client alle richieste e alle risposte dell’API dati. Questo supporto per la mappatura può facilitare l'integrazione con alcuni tipi Java specifici, ad esempio Date, Time e BigDecimal.
Download della libreria client Java per l'API dati
La libreria client Java dell'API dati è open source in GitHub nella seguente posizione:
https://github.com/awslabs/rds-data-api-client-library-java
Puoi creare manualmente la libreria dai file di origine, ma la best practice consiste nell'utilizzare la libreria utilizzando la gestione delle dipendenze di Apache Maven. Aggiungi la seguente dipendenza al file Maven POM.
Per la versione 2.x, compatibile con SDK 2.x AWS, utilizza quanto segue:
<dependency> <groupId>software.amazon.rdsdata</groupId> <artifactId>rds-data-api-client-library-java</artifactId> <version>2.0.0</version> </dependency>
Per la versione 1.x, compatibile con SDK 1.x AWS, utilizza quanto segue:
<dependency> <groupId>software.amazon.rdsdata</groupId> <artifactId>rds-data-api-client-library-java</artifactId> <version>1.0.8</version> </dependency>
Esempi di librerie client Java
Di seguito puoi trovare alcuni esempi comuni di utilizzo della libreria client Java dell'API dati. Questi esempi presuppongono che sia disponibile una tabella accounts con due colonne: accountId e name. Hai anche il seguente oggetto di trasferimento dati (DTO).
public class Account {
int accountId;
String name;
// getters and setters omitted
}
La libreria client consente di passare i DTO come parametri di input. L'esempio seguente mostra come i DTO dei clienti sono mappati ai set di parametri di input.
var account1 = new Account(1, "John");
var account2 = new Account(2, "Mary");
client.forSql("INSERT INTO accounts(accountId, name) VALUES(:accountId, :name)")
.withParamSets(account1, account2)
.execute();
In alcuni casi, è più facile lavorare con valori semplici come parametri di input. Puoi farlo con la seguente sintassi.
client.forSql("INSERT INTO accounts(accountId, name) VALUES(:accountId, :name)")
.withParameter("accountId", 3)
.withParameter("name", "Zhang")
.execute();
Di seguito è riportato un altro esempio che funziona con valori semplici come parametri di input.
client.forSql("INSERT INTO accounts(accountId, name) VALUES(?, ?)", 4, "Carlos") .execute();
La libreria client fornisce il mapping automatico ai DTO quando viene restituito un risultato. Gli esempi seguenti mostrano come il risultato è mappato ai DTO.
List<Account> result = client.forSql("SELECT * FROM accounts")
.execute()
.mapToList(Account.class);
Account result = client.forSql("SELECT * FROM accounts WHERE account_id = 1")
.execute()
.mapToSingle(Account.class);
In molti casi, il set di risultati del database contiene solo un singolo valore. Al fine di semplificare il recupero di tali risultati, la libreria client offre le seguenti API:
int numberOfAccounts = client.forSql("SELECT COUNT(*) FROM accounts")
.execute()
.singleValue(Integer.class);
Nota
La funzione mapToList converte un set di risultati SQL in un elenco di oggetti definito dall'utente. Non è supportato l'utilizzo dell'istruzione .withFormatRecordsAs(RecordsFormatType.JSON) in una chiamata ExecuteStatement per la libreria client Java, perché ha lo stesso scopo. Per ulteriori informazioni, consulta Elaborazione dei risultati delle query dell’API dati di Amazon RDS in formato JSON.