Utilizzo l'SDK java DynamoDB di Amazon e desidero conoscere la differenza tra le classi AmazonDynamoDBClient e DynamoDB. Non riesco a trovare nulla su di loro dal momento che sembra esserci poca documentazione. C'è qualche ragione per cui dovrei usare l'una o l'altra? I loro maggiori vantaggi o svantaggi?Differenza tra classi AmazonDynamoDBClient e DynamoDB nel loro java SDK?
risposta
Questa è una buona domanda. Sembra che DynamoDB
sia un wrapper per lo AmazonDynamoDBClient
, che fornisce un'interfaccia diversa. Quindi questo può essere ovvio e non la risposta che stai cercando, ma lascia che ti descriva alcune delle differenze tra di loro.
Il metodo createTable
in AmazonDynamoDBClient
ritorna un oggetto CreateTableResult
, mentre il metodo CreateTable s' il DynamoDB
ritorna un oggetto Table
. Questo oggetto Table
può quindi essere utilizzato per eseguire CRUD su tale tabella. L'oggetto Table
inizia ad apparire come un oggetto ORM generico per DynamoDB. Quindi non è proprio la classe DynamoDB
vs AmazonDynamoDBClient
, è più simile a DynamoDB
& Table
classi vs AmazonDynamoDBClient
.
AmazonDynamoDBClient
è ovviamente più vecchio della classe DynamoDB
. DynamoDB
è piuttosto nuovo, uscendo in 1.9.x. Ma c'è un'altra classe che vale la pena menzionare, DynamoDBMapper
. DynamoDBMapper
consente anche altre operazioni simili a ORM. Permettendo agli sviluppatori di annotare i loro modelli di dati JavaBean in modo che possano essere facilmente CRUD rispetto a una tabella DynamoDB. Puoi lavorare direttamente con i tuoi oggetti e lo DynamoDBMapper
farà il lavoro CRUD sul database DynamoDB. DynamoDBMapper
è precedente alla classe DynamoDB
. Penso che forse alcuni sviluppatori non volevano lavorare con lo DynamoDBMapper
(forse non un fan di OO o annotazioni?) E ci doveva essere un altro paradigma, ma io sto solo ipotizzando. Quindi sono state create le classi DynamoDB
e Table
. Con la classe Table
è possibile interagire con le tabelle più facilmente rispetto allo AmazonDynamoDBClient
ma senza il sovraccarico di creazione di modelli di dati JavaBean richiesti da DynamoDBMapper
.
- 1. differenza tra java bean e java class?
- 2. Differenza tra classi e spazi dei nomi?
- 3. Qual è la differenza tra BatchGetItem e Query in DynamoDB?
- 4. Differenza tra classi Utility e Helper
- 5. Differenza tra le classi System.StringComparer e System.StringComparison?
- 6. differenza tra pseudo-classi vuote e vuote
- 7. Differenza tra raccolta Java e raccolte
- 8. Differenza tra Groovy Def e Java Object?
- 9. Java: Differenza tra PrintStream e PrintWriter
- 10. Differenza tra SSL e TLS e il loro utilizzo in Java
- 11. Java: Differenza tra macro e micro benchmark
- 12. Java - Differenza tra SwingWorker e SwingUtilities.invokeLater()
- 13. Differenza tra Java DateUtils.ceiling e DateUtils.truncate
- 14. Differenza tra Authenticode, SPC e Java CodeSign?
- 15. Differenza tra PagerTabStrip e TabLayout
- 16. Differenza tra tratto e riempimento?
- 17. Differenza tra stub e quando nel Mockito
- 18. Differenza nel Clojure tra l'uso e richiedere
- 19. iPhone SDK: qual è la differenza tra #import e @class?
- 20. Differenza tra Java e Oracle Java per RedHat
- 21. Java: Differenza tra Class.forName e ClassLoader.loadClass
- 22. Differenza di enum tra java e C++?
- 23. Differenza tra Immagine e BufferedImage in Java
- 24. Differenza tra NoSuchMethodException e NoSuchMethodError in Java
- 25. Differenza tra PriorityQueue e TreeSet in Java?
- 26. Punto Java, differenza tra getX() e point.x
- 27. differenza tra Java e C++ copy constructor
- 28. Differenza tra RTTI e riflessione in Java
- 29. Differenza tra ogg-c e java
- 30. Differenza tra HashMap e Map in Java ..?