Hibernate @ManyToMany: Keine Werte in der JoinTable

Dieses Thema Hibernate - @ManyToMany: Keine Werte in der JoinTable im Forum "Data Tier" wurde erstellt von janpaet, 21. Juli 2014.

Thema: @ManyToMany: Keine Werte in der JoinTable Hallo zusammen, ich habe jetzt viele Foren gelesen und keine Lösung gefunden. Ich habe zwei Entities: Address und...

  1. Hallo zusammen,
    ich habe jetzt viele Foren gelesen und keine Lösung gefunden.
    Ich habe zwei Entities: Address und AddressGroup eine M:N-Beziehung zugewiesen.
    Beide Entities sowie die Entity AddressGroupMember, die ich über @JoinTable definiere, werden in einer Postgresql-DB angelegt.

    Die Entity Address ist der Beziehungs-Eigentümer und definiert die Beziehung.

    Address.java
    HTML:

    @Id private Long id;
    @ManyToMany(fetch = FetchType.EAGER)
    @JoinTable(name = "addressgroupmember",
        joinColumns = { @JoinColumn(name = "address_id", referencedColumnName = "id")},
        inverseJoinColumns = { @JoinColumn(name = "addressgroup_id", referencedColumnName = "id")})
        private Set<AddressGroup> addressGroups = new HashSet<AddressGroup>();
    getter() und setter()
     
    AddressGroup.java
    HTML:

    @Id private Long id;
    @ManyToMany(mappedBy = "addressGroups")
    @Cascade({CascadeType.SAVE_UPDATE})
    private Set<Address> addresses = new HashSet<Address>();
    getter() und setter()
     
    Jetzt füge ich addressGroup eine eine address hinzu und speichere addressGroup.
    In den Tabellen AddressGroup und Address werden die Daten korrekt gespeichert.

    Ist es irgendwie möglich, dass die beiden Primärschlüssel als address_id und addressGroup_id automatisch in der Tabelle AddressGroupMember gespeichert werden?

    Vielen Dank und Grüße,
    Jan
     
  2. Vielleicht hilft dir das Java-Tutorial weiter. Hier klicken --> (Klick)