![]() |
Модераторы: LSD, AntonSaburov |
![]() ![]() ![]() |
|
MerlinDeep |
|
|||
Новичок Профиль Группа: Участник Сообщений: 8 Регистрация: 30.7.2008 Репутация: нет Всего: нет |
Доброго времени суток!
Поздравляю всех с наступившим новым годом! Вожусь с проектом с использованием hibernate и возникла такая ситуация: 1. есть сущьность entity1 с очень большим множеством полей 2. есть сущьности которые используют сущьность entity1, но что бы не тянуть все поля а только необходимые для просмотра создана сущьность entity1LookUp - которая содержит только необходимые для lookUp поля. 3. возникла потребность фильтровать данные в entity1LookUp по полям которые эта сущьность не содержит, но поля эти есть в базовой сущьности и есть в таблице Подскажите как быть в этой ситуации? Может есть более правльная органзация процесса? Просьба не предлагать решения типа: а ты добавь поля по которым надо сделать фильтр, и так понятно что это наипростейщий вариант, но он увеличит трафик, а этого не нужно делать. Очень жду ваших советов. Еще раз всех с Новым Годом! |
|||
|
||||
jk1 |
|
||||||||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1168 Регистрация: 17.10.2008 Где: Санкт-Петербург Репутация: 5 Всего: 75 |
Почему бы не воспользоваться ленивой инициализацией для полей? Тогда подтягиваться будут только требуемые поля и ничего больше, и новая сущность будет не нужна.
Если Вы не задавали этот факт явным образом, то Ваши поля по умолчанию загружаются "лениво", то есть по требованию. Общий default для полей сущностей и коллекций можно настроить так
Настройка для полей отдельного класса
Для отдельного поля
Если используете аннотации, то
От себя добавлю, что такая оптимизация обычно применяется только для коллекций или сложных композитных сущностей, то есть экономить на полях простых типов не имеет смысла. -------------------- Opinions are like assholes — everybody has one |
||||||||
|
|||||||||
MerlinDeep |
|
||||
Новичок Профиль Группа: Участник Сообщений: 8 Регистрация: 30.7.2008 Репутация: нет Всего: нет |
Добрый день, спасибо что откликнулись. Думаю использование ленивой инициализации конкретно для моего проекта будет несколько проблематично. Проект представляет собой связку hibernate+spring+extjs. Передача объекта extjs происходит путем упаковывания результата полученого от hibernate в json. Т.е. получается что для передачи всегда будут тянутся все поля. Собственно для этого и возникла потребность в использовании дополительной урезаной сущьности, что бы явно указать что нужны поля такие и такие. Хотя я может чего-то недопонял. |
||||
|
|||||
![]() ![]() ![]() |
Правила форума "Java" | |
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Java EE (J2EE) и Spring | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |