Интересно, можно ли определить Set
в отображении Hibernate таким образом, чтобы этот элемент указывал не столбец в исходной ( FOO ) таблице, а в объединенной ( BAR *) 1005 *). Допустим, у нас есть некоторый FooContainer.hbm.xml
, который содержит Set
из Foo
объектов:
<set ...>
<key column="COLUMN_FROM_BAR" />
<one-to-many class="xyz.Foo" />
</set>
Здесь FOO имеет от FK до BAR ( FOO.BAR_ID ), поэтому соединение осуществляется через элемент в Foo.hbm.xml:
<many-to-one class="xyz.Bar" fetch="join" column="BAR_ID" foreign-key="barId" ... />
, в результате чего FOO-BAR выбирается при каждом выборе xyz.Foo
.
Проблема в том, что при сгенерированном условии Set
выборка select выглядит примерно так:
... WHERE _FOO_0.COLUMN_FROM_BAR = ?
при желании:
... WHERE _BAR_0.COLUMN_FROM_BAR = ?