Domanda

Sto cercando di capire una riga dall' API di Google Datastore che dice:

  

JDO utilizza le annotazioni sulle classi Java   per descrivere come istanze della classe   sono memorizzati nell'archivio dati come   entità e come sono le entità   ricreato come istanze quando recuperato   dall'archivio dati.

Sono sicuro che questa è una domanda fondamentale per la maggior parte delle persone. Ma non capisco perché l'oggetto di classe debba essere archiviato nel database e successivamente recuperato. Perché non definire invece l'aspetto dell'archivio dati per la propria applicazione e archiviare solo i dati rilevanti dalle proprietà della classe secondo necessità, invece di archiviare l'intera classe o archiviare sempre le stesse proprietà ripetutamente? L'istanza della classe contiene tutti i tipi di informazioni che, a mio avviso, non hanno bisogno di essere nel database - metodi, variabili di classe, variabili di istanza - scriviamo quelle cose nel nostro codice sorgente e non abbiamo bisogno di riprodurre nel database - abbiamo solo bisogno di alcuni dati rilevanti su cui sta funzionando la classe per essere memorizzati. Destra? Forse non capisco cosa si intende per affermazione citata. Per favore, correggimi se ho frainteso.

È stato utile?

Soluzione

Google Datastore non è un database relazionale standard come SQL Server o Oracle. Le entità vengono archiviate in base alla loro definizione, piuttosto che al metodo tradizionale di creare prima uno schema, quindi mappare un oggetto sullo schema. Non credo che membri o metodi privati ??siano archiviati insieme ai dati, quindi non è come se l'intero oggetto, inclusi i metodi, fosse serializzato nel Datastore.

Altri suggerimenti

  

Perché non definire invece l'aspetto del datastore per la propria applicazione e archiviare solo i dati rilevanti dalle proprietà della classe in base alle necessità anziché archiviare l'intera classe o archiviare sempre le stesse proprietà ripetutamente?

Questo è esattamente ciò che effettivamente hai citato:

  

JDO utilizza le annotazioni sulle classi Java per descrivere come le istanze della classe vengono archiviate nel datastore come entità e come le entità vengono ricreate come istanze quando recuperate dal datastore.

Usa le annotazioni per dire "archivia il campo X", "ignora il campo Y", ecc.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top