![]() |
|
Модераторы: LSD, AntonSaburov |
![]()
|
|
| diyko |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 23 Регистрация: 12.7.2007 Репутация: нет Всего: нет |
например есть таблица сompany с каким то набором полей я хочу сделать класс CompanyShortInfo, класс CompanyInfo и класс CompanyFullInfo (CompanyInfo extends CompanyShortInfo CompanyFullInfo extends CompanyInfo ) з мапингом на одну таблицу Мне ето нужно потому что есть варианти когда не надо извлекать все поля компании а только два или три как наиболее коректно ето сделать? Или лучше с помощю лейзилоадинга? |
|||
|
||||
| Llucas |
|
|||
![]() J2EE Developer ![]() Профиль Группа: Участник Сообщений: 160 Регистрация: 29.11.2006 Где: Одесса Репутация: нет Всего: нет |
Проще все в запросе явно указывать какие поля тебе нужно в каждой конкретной ситуации.
Вообще ты можешь сделать основной класс.. К примеру у него будет ряд переменных и еще две переменные - классы которые ты хотел создать. Эти классы не должны быть extends а просто implements Cloneable, Serializable . В эти классы клади какие-ты хочешь переменные. |
|||
|
||||
| diyko |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 23 Регистрация: 12.7.2007 Репутация: нет Всего: нет |
Можно, но не очень красиво
А что будет если просто сделать мапинг без каких либо дискриминаторов? С xml ето когдато работало |
|||
|
||||
| Llucas |
|
|||
![]() J2EE Developer ![]() Профиль Группа: Участник Сообщений: 160 Регистрация: 29.11.2006 Где: Одесса Репутация: нет Всего: нет |
Здесь такое дело... если у тебя есть таблица и ты хочешь брать из нее ряд столбцов... разбей эту таблицу на 2 таблицы, свяжи их, сделай маппинг и работай с разными объектами...
Что такое дискриминатор? |
|||
|
||||
| necromancer |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 317 Регистрация: 26.7.2006 Где: Москва Репутация: 6 Всего: 7 |
to Llucas господи, какие сложности =))))
есть ведь такая штука в базах, как синонимы, вьюшки и т.п. лабудень =) Добавлено @ 17:25 плюс ко всему посредством аннотаций у меня вполне нормально получилось замапить 2 класса на одну таблицу. Трудности начнутся при написании HSQL Это сообщение отредактировал(а) necromancer - 25.3.2008, 17:26 -------------------- С уважением, Виталий Смык ---------------------------------------------------------------------------------------------- SCJP, SCWCD, OCA http://dev.maryno.net/video/ |
|||
|
||||
| Llucas |
|
||||
![]() J2EE Developer ![]() Профиль Группа: Участник Сообщений: 160 Регистрация: 29.11.2006 Где: Одесса Репутация: нет Всего: нет |
necromancer, вообще не понял к чему ты это сказал...
Если хочешь использовать хибернейт, чтобы избежать трудностей с hql не надо так делать... |
||||
|
|||||
| necromancer |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 317 Регистрация: 26.7.2006 Где: Москва Репутация: 6 Всего: 7 |
вопорс был?
ответ был? а вот это вот
бред ИМХО такие решения не стоит предлагать, с учетом того что ВОПРОС стоял не как сделать 2 класса на 2!!! таблицы, а как 2 классана ОДНУ таблицу! Добавлено через 51 секунду насчет HSQL я о нем не шибко хорошего мнения. но это все субъективно -------------------- С уважением, Виталий Смык ---------------------------------------------------------------------------------------------- SCJP, SCWCD, OCA http://dev.maryno.net/video/ |
|||
|
||||
| Llucas |
|
|||
![]() J2EE Developer ![]() Профиль Группа: Участник Сообщений: 160 Регистрация: 29.11.2006 Где: Одесса Репутация: нет Всего: нет |
Вопрос стоит так что сам по себе уже предусматривает сложности в работе...
Я говорю о том, что надо пересмотреть структуру БД или при выполнении запроса явно указывать поля - вот и все... Бреда тут нету. |
|||
|
||||
| necromancer |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 317 Регистрация: 26.7.2006 Где: Москва Репутация: 6 Всего: 7 |
теперь я отвечу за свои слова =)
если в базе создать синоним то к таблице можно обращатся по 2-м разным именам. но это будет та же самая таблица. С вью впринципе тоже самое и даже update может проходить если не используется аггрегация и другие сложности.
Не всегда. Например есть строчка в бад имя и фото. при работе с одним классом Хибер будет тянуть и фото. что явно накладно. разбиваем работу с хибером на два класса по одному ключу - повышаем производителньость системы в разы. А структура базы полностью отражает сущность объекта. Или предлагаешь хранить имена и фото в разных таблицах + ключ + связывание + контроль целостности Это сообщение отредактировал(а) necromancer - 25.3.2008, 18:09 -------------------- С уважением, Виталий Смык ---------------------------------------------------------------------------------------------- SCJP, SCWCD, OCA http://dev.maryno.net/video/ |
|||
|
||||
| diyko |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 23 Регистрация: 12.7.2007 Репутация: нет Всего: нет |
Да ето именно такой случай наверное каждий раз тянуть фото накладно проще два класа к одной таблице какие проблеми могут бить с HQL Кто то знает точно? Разбивать на две таблици не хочеться также потому что логически ето все таки один обект |
|||
|
||||
| necromancer |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 317 Регистрация: 26.7.2006 Где: Москва Репутация: 6 Всего: 7 |
кстати вот не знаю можно ли сделать lazyLoad на поле и наверное в принципе можно создать фильтры.
-------------------- С уважением, Виталий Смык ---------------------------------------------------------------------------------------------- SCJP, SCWCD, OCA http://dev.maryno.net/video/ |
|||
|
||||
| iluvatar |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 266 Регистрация: 17.9.2007 Репутация: 4 Всего: 4 |
насколько я понял, вопрос здесь стоит как реализовать наследование нескольких классов, отображающих одну таблицу.
|
|||
|
||||
| diyko |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 23 Регистрация: 12.7.2007 Репутация: нет Всего: нет |
В общем да
і как верно их мапить |
|||
|
||||
| necromancer |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 317 Регистрация: 26.7.2006 Где: Москва Репутация: 6 Всего: 7 |
про наследование читаем документацию по Hibernat
-------------------- С уважением, Виталий Смык ---------------------------------------------------------------------------------------------- SCJP, SCWCD, OCA http://dev.maryno.net/video/ |
|||
|
||||
| diyko |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 23 Регистрация: 12.7.2007 Репутация: нет Всего: нет |
читал
|
|||
|
||||
![]()
|
| Правила форума "Java" | |
|
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Java EE (J2EE) и Spring | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |