Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Hibernate, List вместо Set 
V
    Опции темы
PovAnd
Дата 14.9.2007, 16:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 102
Регистрация: 20.8.2007

Репутация: нет
Всего: нет



Объясните, как мне замэпить связь many-to-one, таким образом чтобы вместо Set в замэпленном классе использовался List.

Вот с Set все понятно, вот приведу свой мэппинг:

Код

        <many-to-one name="geographicalLocation"
            column="GEOGRAPHICAL_LOCATION_ID" class="GeographicalLocation"
            not-null="false" />

        <set name="geographicalLocations">
            <key column="ID" />
            <one-to-many class="GeographicalLocation" />
        </set>


тогда если мне надо коллекция челдов в моем классе GeographicalLocation, я без проблем ее получаю, но вот мне как-то не очень нравится коллекция Set. Хотелось бы получить коллекцию List.

Я попробовал следующий мэппинг:

Код

        <many-to-one name="geographicalLocation"
            column="GEOGRAPHICAL_LOCATION_ID" class="GeographicalLocation"
            not-null="false" />

        <list name="geographicalLocations">
            <key column="ID" />
            <list-index column="GEOGRAPHICAL_LOCATION_ID"/>
            <one-to-many class="GeographicalLocation" />
        </list>


В итоге оно действиетльно получило Лист с чилдами, но - если в Set были только сами объекты, то в List у меня еще с нужными мне объектами куча каких-то левых null, которые мне нафиг не нужны. Как исправить чтобы все было так как с Set, но коллекцией был List?

Это сообщение отредактировал(а) PovAnd - 14.9.2007, 16:15
PM MAIL   Вверх
Tony
Дата 14.9.2007, 16:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1159
Регистрация: 3.3.2006
Где: Riga

Репутация: 6
Всего: 12



Можно:
Код

<hibernate-mapping >
    <class name="test.Person" table="person">
        <id name="personId" type="string" >
         <column name="personId" length="32" not-null="true" />
        </id>
        <property name="firstName" length="32"/>
        <property name="communityId" length="32"/>
    </class>
    
    <class name="test.Book" table="book">    
        <id name="communityId" type="string" >
            <column name="communityId" length="32" not-null="true"/>
        </id>
<!-- 
        <set name="listPersons">           
            <key column="communityId"/>
            <one-to-many class="test.Person" />            
        </set>
         -->
        <bag name="listPersons" inverse="true" cascade="all">
            <key column="communityId"/>
            <one-to-many class="test.Person"/>
           </bag> 

    </class>
</hibernate-mapping>



--------------------
user posted image
user posted image
PM MAIL Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java EE (J2EE) и Spring | Следующая тема »


 




[ Время генерации скрипта: 0.0401 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.