powered by simpleCommunicator - 2.0.30     © 2024 Programmizd 02
Map
Форумы / Java [игнор отключен] [закрыт для гостей] / Фаулер. Concrete table inheritance
25 сообщений из 77, страница 1 из 4
Фаулер. Concrete table inheritance
    #39873961
questioner
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В Concrete table inheritance(в хибере это НЕ дефолт) для каждого конкретного класса иерархии создаётся таблица БД со всем полями класса и всех его предков.

Фаулер пишет, что при таком раскладе во всех таблицах должны использоваться идентификаторы уникальные в рамках иерархии

Теперь про проблему:

Есть иерархия наследования:


игрок <== футболист
-------- <== баскетболист

В итоге в базе 2 таблицы футболист и баскетболист

Затем в коде мы делаем объект благотворительная акция, куда цепляем список игроков(причем один игрок может участвовать в нескольких благотворительных акциях).

Автор пишет, что одно из решений это сделать таблицу связку для каждой таблицы соответсвующей конкретному класса(футболист, баскетболист), но по очевидным причинам это не очень эффективно. А какие-то ещё есть варианты?

Я из текста вообще не понял когда такой подход будет хорош.
...
Рейтинг: 0 / 0
Фаулер. Concrete table inheritance
    #39873980
questioner
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
также вызывает вопросы следузщее утверждение:


Если поля классов домена перемещаются в суперклассы или производные классы, придётся вносить изменения в определения таблиц. Эти изменения будут не так часты, как в случае наследования с таблицами для каждого класса, однако их нельзя просто игнорировать, как было в случае с наследованием с одной таблицей.

спортcмен(Абстрактный класс)<==== конькобежец(конкретный класс)<===== хоккеист(конкретный класс)


итого имеем 2 таблицы для конькобежцев и для хоккеистов

1. переместили поле из спортсмена в конькобежца

Вроде никаких изменений в таблице не надо делать

2. переместили поле из конькобежца в хоккеиста

таблица хоккеиста остаётся неизменной

из конькобежца вырезаем поле

3. переместили поле из хоккеиста в конькобежца

добавляем поле в конькобежца

таблица хоккеиста остаётся неизменной

4. переместили поле из конькобежца в спортcмена

ничего не делаем

То есть что-то меняется только для конкретных классов, которые не являются листьями. Правильно я понял?
...
Рейтинг: 0 / 0
Фаулер. Concrete table inheritance
    #39873987
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
questionerТеперь про проблему:то есть для умолчания в хибере проблемы не будет?
Почему не рассмотрели?
...
Рейтинг: 0 / 0
Фаулер. Concrete table inheritance
    #39873988
questioner
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
PetroNotC SharpquestionerТеперь про проблему:то есть для умолчания в хибере проблемы не будет?
Почему не рассмотрели?

По умолчанию не будет. Что рассмотреть? вообще вопрос не по существу.
...
Рейтинг: 0 / 0
Фаулер. Concrete table inheritance
    #39873989
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
questionerВ Concrete table inheritance(в хибере это НЕ дефолт)это плохой метод.
Зачем его обсуждать?
...
Рейтинг: 0 / 0
Фаулер. Concrete table inheritance
    #39873998
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
questionerЯ из текста вообще не понял когда такой подход будет хорош.вы с фаулером втыкаете наследование в рсубд.
Это вообще не есть хорошо. Поэтому и компромиссы и костыли и куча вопросов.
...
Рейтинг: 0 / 0
Фаулер. Concrete table inheritance
    #39874003
questioner
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
PetroNotC SharpquestionerЯ из текста вообще не понял когда такой подход будет хорош.вы с фаулером втыкаете наследование в рсубд.
Это вообще не есть хорошо. Поэтому и компромиссы и костыли и куча вопросов.

Вопросы предполагают ответы. В данном топике обсуждаются конкретные вопросы.
...
Рейтинг: 0 / 0
Фаулер. Concrete table inheritance
    #39874009
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
questioner,
Правильно я понял, что мне нужно обосновать выключение основного режима хибера?
При котором он эффективнее работает?
...
Рейтинг: 0 / 0
Фаулер. Concrete table inheritance
    #39874010
questioner
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
PetroNotC SharpquestionerВ Concrete table inheritance(в хибере это НЕ дефолт)это плохой метод.
Зачем его обсуждать?

Фаулер такого не написал. Из текста мне тоже показалось, что это не лучшее решение, но сорян, где ты, где я и где Фаулер.
...
Рейтинг: 0 / 0
Фаулер. Concrete table inheritance
    #39874012
questioner
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
PetroNotC Sharpquestioner,
Правильно я понял, что мне нужно обосновать выключение основного режима хибера?
При котором он эффективнее работает?

Не надо иметь семи пядей во лбу, чтобы понять, что эффективность зависит от решаемой задачи и в каких-то случаях, по всей видимости, она должна иметь преимущества.
...
Рейтинг: 0 / 0
Фаулер. Concrete table inheritance
    #39874017
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
questioner,
Это как в школе вопрос:
- На чем поедешь?
- На машине!
- Машина сломалась.
- Тогда пешком!
- Ног нету....
- Тогда поползу!
....
))))
...
Рейтинг: 0 / 0
Фаулер. Concrete table inheritance
    #39874019
questioner
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
PetroNotC Sharpquestioner,
Это как в школе вопрос:
- На чем поедешь?
- На машине!
- Машина сломалась.
- Тогда пешком!
- Ног нету....
- Тогда поползу!
....
))))

Твоё умение что-то брякнуть, даже если сказать нечего - поражает.
...
Рейтинг: 0 / 0
Фаулер. Concrete table inheritance
    #39874030
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
questionerТвоё умение что-то брякнуть, даже если сказать нечего - поражает.
Вот у тебя - смотрю в книгу, вижу фигу лучше?
...
Рейтинг: 0 / 0
Фаулер. Concrete table inheritance
    #39874033
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
questioner,
Вроде mayton тебе говорил - не относиль к словам фаулера слишком серьезно.
...
Рейтинг: 0 / 0
Фаулер. Concrete table inheritance
    #39874049
questioner
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
PetroNotC SharpquestionerТвоё умение что-то брякнуть, даже если сказать нечего - поражает.
Вот у тебя - смотрю в книгу, вижу фигу лучше?

Так я и пришёл с посылом, что вот я не понимаю - объясните, пожалуйста те, кто может. Почему отвечает только тот, кто не может - не поддаётся объяснению.
...
Рейтинг: 0 / 0
Фаулер. Concrete table inheritance
    #39874075
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
questioner,
Мне больше импонирует чел с цветочным магазином. Он без лени трудится.
Ты же жди ответов. Результат равен нулю.
Удачи!
...
Рейтинг: 0 / 0
Фаулер. Concrete table inheritance
    #39874145
Kachalov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
questionerЕсть иерархия наследования:

игрок <== футболист
-------- <== баскетболист

В итоге в базе 2 таблицы футболист и баскетболист

- Вам надо три таблицы, еще и родительскую "игрок"

Затем в коде мы делаем объект благотворительная акция, куда цепляем список игроков(причем один игрок может участвовать в нескольких благотворительных акциях).

questionerА какие-то ещё есть варианты?
- цепляйте связь с "благотворительными акциями" к родительской таблице "игрок"
...
Рейтинг: 0 / 0
Фаулер. Concrete table inheritance
    #39874152
questioner
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Kachalov- Вам надо три таблицы, еще и родительскую "игрок"


Не надо по этому типовому решению. тут только для конкретных классов требуется таблица
...
Рейтинг: 0 / 0
Фаулер. Concrete table inheritance
    #39874163
Kachalov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
questionerНе надо по этому типовому решению. тут только для конкретных классов требуется таблица
- пожалуйста, Вам видней
...
Рейтинг: 0 / 0
Фаулер. Concrete table inheritance
    #39874171
questioner
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
KachalovquestionerНе надо по этому типовому решению. тут только для конкретных классов требуется таблица
- пожалуйста, Вам видней

В этом и суть вопроса просто)
...
Рейтинг: 0 / 0
Фаулер. Concrete table inheritance
    #39874224
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
questioner, давай приводи полную цитату Фаулера. А то получается как в анекдоте
про Рабиновича который Шаляпина напел.
...
Рейтинг: 0 / 0
Фаулер. Concrete table inheritance
    #39874265
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
questionerигрок <== футболист
-------- <== баскетболист

В итоге в базе 2 таблицы футболист и баскетболист
И схему пусть рисует нормально.
...
Рейтинг: 0 / 0
Фаулер. Concrete table inheritance
    #39874296
Фотография asv79
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
непонятна суть проблемы афтара
есть супер класс
от него наследуются две сущности
потом табла с мероприятием куда подятигиваются наследники супер класса
в чем у афатара проблема?
...
Рейтинг: 0 / 0
Фаулер. Concrete table inheritance
    #39874299
Фотография asv79
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
KachalovquestionerЕсть иерархия наследования:

игрок <== футболист
-------- <== баскетболист

В итоге в базе 2 таблицы футболист и баскетболист

- Вам надо три таблицы, еще и родительскую "игрок"

Затем в коде мы делаем объект благотворительная акция, куда цепляем список игроков(причем один игрок может участвовать в нескольких благотворительных акциях).

questionerА какие-то ещё есть варианты?
- цепляйте связь с "благотворительными акциями" к родительской таблице "игрок"
дядь ты бы изучил для начала hibernate inheritance
если делать три таблицы,тогда нахрен вообще это свойство хибера))

суть этого действа в том,что ты определяешь в супер классе общие поля,а в налслдниках частные и при создании новой сущности автоматически производится запись в той табле,к которой принадлежит сущность
...
Рейтинг: 0 / 0
Фаулер. Concrete table inheritance
    #39874304
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
asv79в чем у афатара проблема?в анализе двух вариантов наследования.
Хотя ТС сопротивляется, но анализ нельзя делать не сравнивая одно с другим.
...
Рейтинг: 0 / 0
25 сообщений из 77, страница 1 из 4
Форумы / Java [игнор отключен] [закрыт для гостей] / Фаулер. Concrete table inheritance
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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