Domanda

Sono nuovo di disegni ad oggetti di database e sto cercando di capire come dovrei essere strutturare le mie lezioni in JDO per Google App Engine, in particolare uno a molti rapporti.

dire Let Sto costruendo una struttura per un grande magazzino dove ci sono molti reparti, e ogni dipartimento ha molti prodotti. Quindi vorrei avere una classe chiamata Dipartimento, con una variabile che è una lista di una classe del prodotto.

@PersistenceCapable 
public class Department { 
    @PrimaryKey 
    @Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY) 
    private String deptID; 

    @Persistent 
    private String departmentName; 

    @Persistent 
    private List<Product> products; 

}

@PersistenceCapable 
public class Product { 
    @PrimaryKey 
    @Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY) 
    private String productID; 

    @Persistent 
    private String productName; 

}

Ma un prodotto può essere in più di un Dipartimento (come una batteria potrebbe essere in elettronica e accessori per la casa). Così la prossima domanda è: come faccio a meno di dati duplicati nel mondo OOD e hanno una sola copia dei dati di prodotto in numerosi reparti? E la prossima domanda è, diciamo che elimino fuori un particolare prodotto, come si fa ciascuno dei dipartimenti sanno è stato eliminato?

È stato utile?

Soluzione

È necessario aggiungere la seguente al membro rilevante della classe Department. Inoltre, vedere la sezione riguardo a questa in App Engine documentazione .

@Persistent
@Element(dependent = "true")
private List<Product> products; 
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top