Frengo ha scritto:
Salve a tutti, ho creato una piccola app per la gestione delle vendite utilizzando Spring e MySQL a scopo puramente didattico.
Non ho ancora ben capito come funzionano le relazioni tra le tabelle nella pratica, o meglio ho ancora difficoltà a impostare relazioni corrette.
Chiariamo una cosa: hai usato chiaramente JPA, come si evince dal codice. Ma JPA non è l'unica strada possibile, ci sono un sacco di altri modi per accedere con Java ad un DB relazionale. Quindi la prima questione sarebbe: ti serve davvero JPA? Per 3 tabelle in croce che hai?
Frengo ha scritto:
Inoltre, dove posso imparare ad utilizzare bene notazioni e comandi relativi alle relazioni tra le tabelle? Su internet il materiale c'è ma è dispersivo.
Purtroppo JPA non è "facile". Ed è vero, su internet c'è vario materiale ma non è facile trovarlo e non è detto che sia omni-comprensivo. Ci sono però dei validi libri (in inglese) tipo quelli della Apress.
Frengo ha scritto:
Ultima curiosità: volendo scegliere tra raggiungere il risultato voluto tramite un'opportuna gestione delle relazioni tra le tabelle o tramite l'implementazione di una logica adatta direttamente codice, cosa è da preferire?
Probabilmente ti stai domandando: "c'è un altro modo oltre a JPA?". Come ho già detto prima, sì certo, ce ne sono svariati.
Frengo ha scritto:
@Column (name="\"Codice prodotto\"")
@Column (name="\"Nome prodotto\"")
@Column (name ="\"Prezzo unitario (€)\"")
Comunque, già mettere dei nomi "quotati" non è il massimo. Ma la cosa ancora peggiore è mettere dei nomi di colonne con spazi o caratteri particolari. Pertanto, NON dovresti mai mettere nomi di colonne (parlo proprio delle colonne fisiche della tabella) chiamate es "Prezzo unitario (€)".