Hibernate mapping - отображение через таблицу - PullRequest
2 голосов
/ 30 марта 2011

У меня следующая структура базы данных:

Table 1                    Table 2 
                                                       Table 3
tid_1 ----(many-to-one)---- tid_1                        
....                        tid_2 ----(one-to-many)---- tid_2
                                                        tkey
                                                        tvalue

Есть ли способ создать класс, определенный как Table 1, с java.util.Map, связывая tkey с tvalue из Table 3?Я довольно новичок в Hibernate, и, прежде чем спрашивать, я пытался искать и экспериментировать, но ничего не получил.Будем благодарны за любую помощь.

PS Если это не помешает вам, я бы предпочел использовать стиль .hbm.xml.

1 Ответ

4 голосов
/ 30 марта 2011

Вы можете объявить карту с tkey в качестве ключа и сущностью, сопоставленной с Table 3 в качестве значения:

@Entity
public class Table1 {
    @ManyToMany
    @JoinTable(name = "Table2")
    @MapKey(name = "key")
    private Map<String, Table3> table3s;

    ...
}

@Entity
public class Table3 {
    @Column(name = "tkey")
    private String key;

    @Column(name = "tvalue")
    private String value;

    ...
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...