sql >> Database >  >> RDS >> Mysql

De eenvoudigste een-op-veel kaart in Hibernate werkt niet in MySQL

En natuurlijk zweet ik het probleem urenlang, post het hier, en een minuut later...

Hoe dan ook, het antwoord is het mappedBy-element van de @OneToMany-annotatie:

@OneToMany(cascade = CascadeType.ALL, fetch=FetchType.LAZY, mappedBy="member")
@MapKey(name = "name")
private Map<String, Preferences> preferences
         = new HashMap<String, Preferences>(); 

Wat logisch is:welk veld in de entiteit Veel verwijst terug naar de Ene entiteit? Zelfs als het zoeken naar een overeenkomend @ManyToOne-veld te foutgevoelig was, denk ik dat wat ze deden (ervan uitgaande dat er een toewijzingstabel bestaat) nog erger wordt.




  1. Kan niet bulksgewijs laden. Besturingssysteem foutcode 5 (Toegang is geweigerd.)

  2. Waarom zou het gebruik van IN(...) bij het selecteren op geïndexeerde velden de prestaties van de SELECT-query verminderen?

  3. Het standaarddatabase-e-mailprofiel voor een gebruiker in SQL Server (T-SQL) wijzigen

  4. MySql Algemene fout:2053