|
|
|
NHibernate вопрос (тупой наверное)
|
|||
|---|---|---|---|
|
#18+
Вобщем есть такие два объекта предметной области: Device { Id, Name Model } Model { Id, Name } Device - устройство, Model - модель устройства Так вот вопрос что лучше хранить в Device. Id или объект Model? Я остановился на Id. Но как-то это ни][ера не объектно-ориентированно. :( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.03.2009, 16:06 |
|
||
|
NHibernate вопрос (тупой наверное)
|
|||
|---|---|---|---|
|
#18+
Использую NHibernate ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.03.2009, 16:07 |
|
||
|
NHibernate вопрос (тупой наверное)
|
|||
|---|---|---|---|
|
#18+
Lord British Так вот вопрос что лучше хранить в Device. Id или объект Model? Я остановился на Id. Но как-то это ни][ера не объектно-ориентированно. :( А почему не ссылку экземпляр Model? Как раз получается объектно-ориентированно. ) Код: plaintext Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.03.2009, 19:32 |
|
||
|
NHibernate вопрос (тупой наверное)
|
|||
|---|---|---|---|
|
#18+
А если Модель справочник, один раз загрузили и все.С Id получается экономно ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.03.2009, 20:29 |
|
||
|
NHibernate вопрос (тупой наверное)
|
|||
|---|---|---|---|
|
#18+
SeVaА если Модель справочник, один раз загрузили и все.С Id получается экономноА разве хранить ссылку на Модель не так-же экономно, как и Id? Даже более экономно - не нужно будет перед использованием искать Модель по Id Это если сам объект Модель где-то нужен. Понятно, что если он не нужен, то Id. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.03.2009, 12:45 |
|
||
|
NHibernate вопрос (тупой наверное)
|
|||
|---|---|---|---|
|
#18+
тупой конечно ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.03.2009, 13:57 |
|
||
|
NHibernate вопрос (тупой наверное)
|
|||
|---|---|---|---|
|
#18+
авторДаже более экономно - не нужно будет перед использованием искать Модель по Id Раскажи,как ты ссылки без поиска находишь ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.03.2009, 15:23 |
|
||
|
NHibernate вопрос (тупой наверное)
|
|||
|---|---|---|---|
|
#18+
SeVaавторДаже более экономно - не нужно будет перед использованием искать Модель по Id Раскажи,как ты ссылки без поиска находишьЭто элементарно - их нужно будет найти только один раз, а не перед каждым использованием. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.03.2009, 18:33 |
|
||
|
NHibernate вопрос (тупой наверное)
|
|||
|---|---|---|---|
|
#18+
Ну вообще-то NH не грузит объекты по 10 раз тоже, если его об этом не попросить (Refresh). Смысл в том, что если в одноной и той же сессии загрузить объект (например через Get) и потом опять сделать Get, то NH обратится к БД только в первый раз, воторой раз он просто вернет ссылку на persistent object. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2009, 08:56 |
|
||
|
NHibernate вопрос (тупой наверное)
|
|||
|---|---|---|---|
|
#18+
А для чего она нужна полная Model в Device?Могут быть и классы гораздо толще? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2009, 10:32 |
|
||
|
NHibernate вопрос (тупой наверное)
|
|||
|---|---|---|---|
|
#18+
b0ltunСмысл в том, что если в одноной и той же сессии загрузить объект (например через Get) и потом опять сделать Get, то NH обратится к БД только в первый раз, воторой раз он просто вернет ссылку на persistent object.Это, конечно, правильно. Только чтобы вернуть ссылку на persistent object, процессору нужно выполнить милион операций. Хоть это и не милиард, который нужен для загрузки объекта из БД, но всё же больше сотни, которая понадобится, чтобы обратиться к объекту напрямую. SeVaА для чего она нужна полная Model в Device?Могут быть и классы гораздо толще?Может, и не нужна. Собственно, ответ на вопрос ТС простой. Если возможны обращения к Model (т.е. это не просто хранимый атрибут), нужно хранить и то, и другое: Device { Id, Name Model } При этом Model - null, и при обращении к Model получать этот объект по Id. Естественно, как положено - искать сначала в кэше, а потом уже обращаться к БД. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2009, 11:12 |
|
||
|
NHibernate вопрос (тупой наверное)
|
|||
|---|---|---|---|
|
#18+
авторМожет, и не нужна Нужна она только для чистоты объектно-ориентированности,которая в действительности никому не нужна(за исключением коллекций), а только вредна.Если нужен список Device, то никакие кеши не помогут,производительность будет ниже плинтуса.Отсуда и вопросы на ровном месте Связь многие ко многим ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2009, 12:26 |
|
||
|
|

start [/forum/topic.php?fid=17&msg=35864354&tid=1351906]: |
0ms |
get settings: |
10ms |
get forum list: |
17ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
91ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
61ms |
get tp. blocked users: |
2ms |
| others: | 240ms |
| total: | 444ms |

| 0 / 0 |
