Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / jpa lazy / 5 сообщений из 5, страница 1 из 1
25.03.2013, 20:33:47
    #38197913
ukku
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
jpa lazy
День добрый. Есть класс User и Country. Объявление в User:
Код: java
1.
2.
3.
4.
5.
6.
public class User  implements Serializable {
...
    @ManyToOne(fetch=FetchType.LAZY)
    @JoinColumn(name="COUNTRY_ID")
    private Country country;
...


При вызове:
Код: java
1.
2.
3.
4.
5.
6.
    public User get(Long id){
        EntityManager entityManager = PostgresqlUtil.getEntityManager();
        User result = entityManager.find(User.class, id);
        entityManager.close();
        return result;
    }


В логах всплывает этот нехороший запрос:
glassfishSELECT ID, S_NAME FROM D_COUNTRY WHERE (ID = ?)

При lazy загрузке же его не должно быть? или я что-то не так делаю? Спасибо!
...
Рейтинг: 0 / 0
25.03.2013, 20:48:20
    #38197930
rdm
rdm
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
jpa lazy
ukku, видимо надо get, а не find.
...
Рейтинг: 0 / 0
25.03.2013, 20:54:17
    #38197935
rdm
rdm
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
jpa lazy
Ой, JPA) Извиняйте)
...
Рейтинг: 0 / 0
25.03.2013, 20:58:43
    #38197937
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
jpa lazy
LAZY в ManyToOne просто так работать не будет, если нет прокси на класс User.
В OneToMany хибер использует свои реализации коллекций, чтобы обеспечить ленивость.
Для ManyToOne нужен соответственно специальный User.
На сколько я помню, хибер поддерживает 3 вида прокси
JDK proxy - требует User implements IUser с соответствующими методами.
javassist - требует инструментации класса, например, во время сборки - используется по-умолчанию.
CGLIB - раньше был движком по-умолчанию, но от него отказались в пользу javassist, как более актуального и менее глючного.
...
Рейтинг: 0 / 0
25.03.2013, 21:38:35
    #38197957
ukku
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
jpa lazy
Спасибо) Что ж так все тяжко то ...
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / jpa lazy / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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