Domanda

All'interno di una classe di entità, posso avere qualsiasi oggetto come attributo e quando persistono l'entità al database, persisterà anche gli attributi degli oggetti?

È stato utile?

Soluzione

Se l'oggetto è serializzabile, è possibile serializzarlo come BLOB.Ma non è qualcosa che vuoi fare perché

    .
  • sarebbe inefficiente per serializzare e deserializzare costantemente l'oggetto
  • Sarebbe molto fragile: un cambiamento nella classe dell'oggetto renderebbe impossibile (o difficile se sai cosa stai facendo) per leggere le versioni precedenti già salvate nel database
  • Solo Java potrebbe dare un senso al BLOB
  • Non è possibile fare alcuna query su questo oggetto

Così, in pratica, la risposta è no.Le entità JPA possono avere oggetti incorporati, i cui campi sono mappati alle colonne o possono avere associazioni con altre entità (Onetoone, Onetomany, Manteone o ManyTomany).

Il mio consiglio: Pensa prima della progettazione del tuo database, quindi mappare lo schema alle entità JPA.Se inizi a scrivere un modello oggetto senza nemmeno pensare come sarà persisteva nel database, non andrai molto lontano.

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