Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / HQL: @Embeddable как результат запроса. / 14 сообщений из 14, страница 1 из 1
08.11.2012, 16:04:49
    #38030539
javapecker
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
HQL: @Embeddable как результат запроса.
Можно ли в качестве результата выполнения HQL запроса получить объекты, не являющиеся сущностями? Например, есть сущность(@Entity) - Сотрудник, у него есть коллекция адресов. Адрес - не сущность, а @Embeddable. Мне нужно запросом получить коллекцию адресов.
...
Рейтинг: 0 / 0
08.11.2012, 16:12:23
    #38030549
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
HQL: @Embeddable как результат запроса.
Что-то типа такого
select new Address(city, street) from Location
...
Рейтинг: 0 / 0
08.11.2012, 16:45:29
    #38030625
javapecker
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
HQL: @Embeddable как результат запроса.
Blazkowicz,
спасибо, работает в таком виде:
Код: sql
1.
select new Address(adr.sity,adr.street) from Location loc join Location.Address adr


Или я неправильно понял?
...
Рейтинг: 0 / 0
08.11.2012, 16:48:08
    #38030635
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
HQL: @Embeddable как результат запроса.
Если Address не сущность, то как джоин работает?
А так работает?
select adr from Location loc join Location.Address adr
...
Рейтинг: 0 / 0
08.11.2012, 16:54:11
    #38030655
javapecker
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
HQL: @Embeddable как результат запроса.
Blazkowicz,
так
Код: sql
1.
select adr from Location loc join Location.Address adr


не работает (хотя этот вариант меня бы больше всего устроил) - ругается что адрес не сущность. А джоин работает, видимо потому что адрес ембеддед и связь замаплена. Я же не указываю сам как связывать.
...
Рейтинг: 0 / 0
08.11.2012, 16:57:59
    #38030673
javapecker
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
HQL: @Embeddable как результат запроса.
Blazkowicz,
вру, ругается что колонка id не существует в адресе
...
Рейтинг: 0 / 0
08.11.2012, 17:07:44
    #38030697
pavel_nv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
HQL: @Embeddable как результат запроса.
javapecker,

должно работать

Код: plsql
1.
select loc.address from Location loc
...
Рейтинг: 0 / 0
08.11.2012, 17:14:04
    #38030706
javapecker
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
HQL: @Embeddable как результат запроса.
pavel_nv, я тоже думал что должно, а потом создал эту тему. Адрес у меня @Embeddable, в локэйшне замаплен как @ElementCollection, Hibernate 4-й.
...
Рейтинг: 0 / 0
08.11.2012, 17:16:40
    #38030714
javapecker
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
HQL: @Embeddable как результат запроса.
pavel_nv, в вашем случае как раз ругается что loc.address не энтити
...
Рейтинг: 0 / 0
08.11.2012, 17:34:42
    #38030749
pavel_nv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
HQL: @Embeddable как результат запроса.
javapecker,

странно, у меня в 3м hibernate работает, правда не как @ElementCollection замаплен.

Классы показать можешь?
...
Рейтинг: 0 / 0
08.11.2012, 17:36:10
    #38030752
javapecker
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
HQL: @Embeddable как результат запроса.
pavel_nv, а как замаплен?
...
Рейтинг: 0 / 0
08.11.2012, 17:38:55
    #38030759
javapecker
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
HQL: @Embeddable как результат запроса.
pavel_nv,

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
@Embeddable
public class Comment  {
 private String s;   
 }

@Entity
public class Book  {
        
    @Id
    private Long id;
    
    @ElementCollection
    private List<Comment> cList = new ArrayList<>();
 
 }
...
Рейтинг: 0 / 0
08.11.2012, 18:39:54
    #38030879
javapecker
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
HQL: @Embeddable как результат запроса.
вообщем так работает:
...
Рейтинг: 0 / 0
08.11.2012, 18:41:22
    #38030884
javapecker
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
HQL: @Embeddable как результат запроса.
Код: sql
1.
select elements(loc.address) from Location loc
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / HQL: @Embeddable как результат запроса. / 14 сообщений из 14, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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