Ik heb een entiteit die de laatste instantie van een component bevat:
@Entity
public class Customer {
...
@Embedded
public ServiceCall getLastServiceCall() {...}
...
}
@Embeddable
public class ServiceCall() {
public Date getDate();
public Status getStatus();
}
De ServiceCall
is ingesloten om customer.getLastServiceCall (). GetDate()
aan te roepen zonder dat er nog een andere tafel nodig is.
Ik wil die associatie een-op-veel maken en begin met het opslaan van alle ServiceCall
s, terwijl ik er een vasthoud die in de klant is ingebed.
Hibernate's Documenten (v3.6, die ik gebruik):
U kunt ook associatieannotaties gebruiken in een insluitbaar object (bijv. @OneToOne, @ManyToOne, @OneToMany of @ManyToMany). Als u de koppelingskolommen wilt overschrijven, kunt u @AssociationOverride gebruiken.
en het lijkt erop dat ik alleen maar @OneToMany
aan de associatie LastServiceCall
moet toevoegen.
Zal dat voor mij werken? Zo nee, wat zijn mijn alternatieven? Zo ja, welke invloed heeft dit op de cache op het tweede niveau en is er een beperking voor het bijwerken van die ingesloten instantie (ik kan leven met onveranderlijke objecten)?