Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / hibernate и выборки иерархий классов / 2 сообщений из 2, страница 1 из 1
28.02.2006, 14:38
    #33570924
black zorro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
hibernate и выборки иерархий классов
в общем у меня есть абстрактный класс X и два производных от него Y, Z
наследование реалзовано через joined-sublass без дискриминатора
когда я делаю выборку вида "select t from X where t.foo = 'bar' "
то выбираются объекты всех типов производных от X - Y,Z что в принципе есть и в доке:
автор
14.7. Polymorphic queries
A query like:
from Cat as cat
returns instances not only of Cat, but also of subclasses like DomesticCat. Hibernate queries may name any Java class or interface in the from clause. The query will return instances of all persistent classes that extend that class or implement the interface. The following query would return all persistent objects:
from java.lang.Object o

но когда я потом в цикле по списку результату бегаю и пытаюсь выполнить преобразование
Код: plaintext
1.
2.
3.
X = (X)listIterator.next();
 if  (X.isFoo())
 Y y = (Y) x;
то у меня cast exception, ладно лезу в отладчик смотрю тип данных вот переменная x у нее тип Y_Какая_То_Чушь$$CGI$$ЕщеЧушь и присутствуют поля характерные для типа Y но правда пустые, и ссылки на внутренние структуры гиберната, отлично смотрю от чего наследован этот тип - от X
тип Y в иерархии не присутствует, приходится делать такую гадость везде где есть касты к конкретным типам:
Код: plaintext
1.
2.
3.
4.
Session s = ....
 if  (x.isFoo() ){
 Y y = (Y)s.load (Y. class  , x.getID() );
}
очевидно что это не метод, не ужели у вас такая же ерунда и как ее бороть.

да еще, есть ли gui тулза для исследования результатов выполнения hql запросов, ввел команду и получил на выходе дерево объетов результата
...
Рейтинг: 0 / 0
01.03.2006, 15:15
    #33574131
expp
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
hibernate и выборки иерархий классов
http://hibernate.org/280.html

это по-моему самая популярная непонятка с
Хибером. исчите дабы обрящите

PS. cast, instanceof - - bad smell
на hibernate.org тоже есть форум причём и в cp1251
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / hibernate и выборки иерархий классов / 2 сообщений из 2, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]