Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / В чем преимущество использования HIBERNATE / 25 сообщений из 33, страница 1 из 2
07.12.2005, 10:43
    #33421392
Vadya
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В чем преимущество использования HIBERNATE
Уважаемые знатоки Java!

Сам я не Java-разработчик,поэтому извиняюсь,если будут некорректные мысли у меня по этому поводу.

Скажите мне,в чем ценность использования Hibernate?-упрощение процесса разработки и т.д.?

Насколько я понял,Java напрямую не пишет SQL запросы,
а их генерит Hibernate. А так происходит маппинг между объектами и таблицами.
Так вот ,я счиатю это полная херня(если я правильно понял),что
разработчик не пишет SQL-запросы и сидит,как слепой котенок - что же там HIbernate пишет в базу?Я понимаю,что можно отмониторить SQL-запросы.
В любом случае разработчки напишет SQL- запрос более оптимизированный ,чем HIBERnate.
Буду очень рад,если развеете мой пессимизм.
(если я вообще правильно понимаю HIBERNATE)
...
Рейтинг: 0 / 0
07.12.2005, 11:03
    #33421464
Pitbull terrier
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В чем преимущество использования HIBERNATE
если приложение не data-centric, то преимущества ORM перевешивают недостатки

Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
07.12.2005, 11:07
    #33421478
REvilest
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В чем преимущество использования HIBERNATE
Идеология верна, но высказывания слишком импульсивны.
Hibernate, сохраняет POJO объекты в реляционную БД, на основе файлов отображения (mapping-файлов), которые представляют собой XML подобную структуру.
Насчет неоптимизироанных запросов - енто ты потаропился, во всяком случае тебе никто не мешает писать прямые запросы используя коннект который предоставляет Hibernate.
Таким образом, разработчик может сосредоточиться на своей бизнес логике, и не париться по поводу CRUD операций связанных с persistence-объектами.
Ну а если у тя прога юзает одну таблицу, то да Hib тебе не нужен :)
...
Рейтинг: 0 / 0
07.12.2005, 11:07
    #33421479
Vadya
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В чем преимущество использования HIBERNATE
Я не понимаю:
что сложного написать SQL-запрос и обходится без уровня прокладки-тампакса HIbernate
...
Рейтинг: 0 / 0
07.12.2005, 11:21
    #33421532
Sergey Karpenkov
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В чем преимущество использования HIBERNATE
VadyaУважаемые знатоки Java!

Сам я не Java-разработчик,поэтому извиняюсь,если будут некорректные мысли у меня по этому поводу.

Скажите мне,в чем ценность использования Hibernate?-упрощение процесса разработки и т.д.?

Насколько я понял,Java напрямую не пишет SQL запросы,
а их генерит Hibernate. А так происходит маппинг между объектами и таблицами.
Так вот ,я счиатю это полная херня(если я правильно понял),что
разработчик не пишет SQL-запросы и сидит,как слепой котенок - что же там HIbernate пишет в базу?Я понимаю,что можно отмониторить SQL-запросы.
В любом случае разработчки напишет SQL- запрос более оптимизированный ,чем HIBERnate.
Буду очень рад,если развеете мой пессимизм.
(если я вообще правильно понимаю HIBERNATE)

Ну в целом вы правильно понимаете задачу Hibernate
Только вот выводы несколько того...
Hibernate ценен тем, собственно не только он а и любая библиотека ORM, что избавляет программиста от кучи рутины типа беганья по ResultSet'ам и обработки тучи исключений при работе с БД, даёт переносимость между БД, предоставляет удобное API, в том числе и API для native - запросов. Конечно Entity Beans занимаются собственно тем же, но Hibernate более гибок и прост в применении, кроме того сфера его применения не ограничивается App Server'ом.


А по вашему получается, что и Application Server это зло не меряное, что это такое сам управляет пулами соеденений, сам управляет пулами компонентов, херня какая. Да и Java тоже не лучше! Где управление памятью как в С? А то что эти вещи иногда в разы увеличивают скорость разработки и её качество? Можно написать распределённые компоненты "с нуля" не используя Application Server, придумать свой протокол передачи, свою библиотеку работы с БД, потом когда понядобится работа в кластере дописать и её, потом при переходе на другую платформу, адаптировать, потом потребуется обеспечить доступ к компонентам с других платформ, о5 писать и отлаживать и тд, и тп. Тоже можно и базой данных, яж не знаю как она там внутре с моими запросами себя ведёт, нафиг , базу тоже "с нуля". Но закончится ли такой проект хоть в когда-нибудь, хоть чем-нибудь вразумительным? Не знаю.
...
Рейтинг: 0 / 0
07.12.2005, 12:14
    #33421776
Jozic
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В чем преимущество использования HIBERNATE
Вопрос имхо провокационный и развеение пессимизма в данном случае возможно только при самостоятельном изучении теории ORM и реальном желании его развеять(или хотябы доказать свою правоту, основываясь на фактах и собственном опыте). Чтите Hibernate in Action.
Hibernate - продукт, имеющий не одну версию, по сей день развивающийся и зарекомендовавший себя как хороший инструмент. То, что вы считаете это полной херней, не значит, что это так и есть.
Если вы не знаете основ ОРМ, не знаете Java (возмжно не знаете ООП (просто предположение) ), то что конкретно вы хотите узнать на форуме в 3 словах, не прочитав и кусочка литературы, не орентируясь в "местных" ценностях???
...
Рейтинг: 0 / 0
07.12.2005, 12:26
    #33421839
Евгений Путилин
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В чем преимущество использования HIBERNATE
VadyaТак вот ,я счиатю это полная херня(если я правильно понял),что
разработчик не пишет SQL-запросы и сидит,как слепой котенок - что же там HIbernate пишет в базу?Я понимаю,что можно отмониторить SQL-запросы.
В любом случае разработчки напишет SQL- запрос более оптимизированный ,чем HIBERnate.

если писать на машшинных кодах то человек их отоптимизирует гораздо луче чем любой человек. Конечно пожно открыть дебагер и посмотреть что там натварил компилятор. но тыкаться слепой как катенок что именно там процессор выполняет не хочется.
...
Рейтинг: 0 / 0
07.12.2005, 12:37
    #33421889
А.Грасоff™
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В чем преимущество использования HIBERNATE
Евгений Путилинесли писать на машшинных кодах то человек их отоптимизирует гораздо луче чем любой человеккакого из указанных человеков считать компьютером?
...
Рейтинг: 0 / 0
07.12.2005, 16:51
    #33423051
Vadya
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В чем преимущество использования HIBERNATE
Вопрос был провокационный:-))
спасибо за ответы.

Единственная проблема:
наши Java почему-то целый день отлавливали ошибку,причина которой был
констрэйнт not null. То есть оин пытались вставить Null в столбец,который not null.
На вопрос:что за SQL-запрос,мне в ответ.хрен знает - его HIBERNATE генерит.
Скорее всего это они тупят.
...
Рейтинг: 0 / 0
07.12.2005, 18:08
    #33423277
-------------
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В чем преимущество использования HIBERNATE
Vadya
наши Java почему-то целый день отлавливали ошибку,причина которой был
констрэйнт not null. То есть оин пытались вставить Null в столбец,который not null.
На вопрос:что за SQL-запрос,мне в ответ.хрен знает - его HIBERNATE генерит.
Скорее всего это они тупят.

Воистину тупят - в Hibernate есть настраиваемый logging , да и DB можно заставить журнарировать SQL.
...
Рейтинг: 0 / 0
07.12.2005, 18:15
    #33423300
Sergey Karpenkov
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В чем преимущество использования HIBERNATE
------------- Vadya
наши Java почему-то целый день отлавливали ошибку,причина которой был
констрэйнт not null. То есть оин пытались вставить Null в столбец,который not null.
На вопрос:что за SQL-запрос,мне в ответ.хрен знает - его HIBERNATE генерит.
Скорее всего это они тупят.

Воистину тупят - в Hibernate есть настраиваемый logging , да и DB можно заставить журнарировать SQL.
Ну и кроме того при описании поля в Hibernate можно указать что оно not null :)
...
Рейтинг: 0 / 0
07.12.2005, 21:10
    #33423610
коты
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В чем преимущество использования HIBERNATE
бгыгы

..+ с правильно выбранной политикой управления оторванными от сессии объетами и настроенным кешированием на ряде задач хибернейт показывает в разы лучшую производительность, чем приложения, написаные традиционным образом "взял соединение, запрос, резалт-сет, распарсил в структуру, отдал соединение"

just another freak in the Freak Kingdom
...
Рейтинг: 0 / 0
08.12.2005, 10:18
    #33424213
am_sasa
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В чем преимущество использования HIBERNATE
Я тоже не использую хибер, поэтому хаить его не хочу. Вопрос скорее в следующем "Зачем нужен ORB". Я делал большой проект без него и все замечательно получилось... С моей точки зрения, зависимость программного кода от структуры БД - не есть хорошо!!!

Поэтому вопрос, какие признаки должны присутствовать,чтобы принять решение об испоьзовании хибера?
...
Рейтинг: 0 / 0
08.12.2005, 10:25
    #33424252
GMax
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В чем преимущество использования HIBERNATE
am_sasaПоэтому вопрос, какие признаки должны присутствовать,чтобы принять решение об испоьзовании хибера?А кого-нибудь есть примеры удачной реализации большого проекта с использованием Hibernate?
...
Рейтинг: 0 / 0
08.12.2005, 10:31
    #33424277
Timm
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В чем преимущество использования HIBERNATE
am_sasaЯ тоже не использую хибер, поэтому хаить его не хочу. Вопрос скорее в следующем "Зачем нужен ORB". Я делал большой проект без него и все замечательно получилось... С моей точки зрения, зависимость программного кода от структуры БД - не есть хорошо!!!

Поэтому вопрос, какие признаки должны присутствовать,чтобы принять решение об испоьзовании хибера?
т.е. ты хочешь сказать, что твой программный код использует бд, но при этом не зависит от ее структуры? :-) забавно, для чего тебе тогда бд? выполнять запросы вида
Код: plaintext
select  1 + 5  a from dual
?
...
Рейтинг: 0 / 0
08.12.2005, 10:42
    #33424319
am_sasa
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В чем преимущество использования HIBERNATE
Timm
т.е. ты хочешь сказать, что твой программный код использует бд, но при этом не зависит от ее структуры? :-) забавно, для чего тебе тогда бд? выполнять запросы вида
Код: plaintext
select  1 + 5  a from dual
? аха))) вопрос как реализовать логику не имея в памяти объекты реализующие структуру БД - это отдельная тема, вполне решаемая...
зато, при дороботке структуры БД, переписываются SQL запросы и,если потребуются, маленькие кусочки кода!
...
Рейтинг: 0 / 0
08.12.2005, 10:46
    #33424342
Sergey Karpenkov
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В чем преимущество использования HIBERNATE
am_sasaЯ тоже не использую хибер, поэтому хаить его не хочу. Вопрос скорее в следующем "Зачем нужен ORB". Я делал большой проект без него и все замечательно получилось... С моей точки зрения, зависимость программного кода от структуры БД - не есть хорошо!!!

Поэтому вопрос, какие признаки должны присутствовать,чтобы принять решение об испоьзовании хибера?
Что-то я не пойму единственные программы код которых не зависит от структуры БД, которые я могу себе представить, это программы не использующие БД. :)
Можно конечно прекрасно обходиться без ORM никтож не спорит с этим. И потом, что такое "большой проект"? Десктоп? Серверное приложение? Эти две вещи сильно между собой отличаются идеологически, а значит и подходами. В десктопном приложении вполне себе можно просто получить конект к БД и парсить результ сеты, в серверном на уровне EJB... ой вряд ли, будет абсолютно не масштабируемо. То есть встаёт выбор либо стандартные Entity Bean, либо какой-нить ORM. О5 же вопросы переносимости. SQL хоть и стандард, но реализации от разных производителей серьёзно отличаются. Hibernate позволяет сделать переносимое преложение. Ну и потом повторюсь ещё раз, у Hibernate удобный API. Именно програмный API, в принцепе вполне возможно написать приложение без строчки кода на SQL или HQL. Это удобно, когда запрос нужно конструировать в зависимости от каких то условий. Да и просто по моим личным ощущения быстрее получается в плане скорости разработки.
...
Рейтинг: 0 / 0
08.12.2005, 10:59
    #33424396
funikovyuri
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В чем преимущество использования HIBERNATE
вопрос как реализовать логику не имея в памяти объекты реализующие структуру БД - это отдельная тема, вполне решаемая...

Это, я так понимаю, вы про хранимые процедуры? А presentation layer у вас тоже на них реализован?
...
Рейтинг: 0 / 0
08.12.2005, 11:11
    #33424448
am_sasa
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В чем преимущество использования HIBERNATE
Sergey Karpenkov
Что-то я не пойму единственные программы код которых не зависит от структуры БД, которые я могу себе представить, это программы не использующие БД. :) оговорюсь, JAVA программы, но в файлах настройки есть имена полей, которые нужно будет сложить...
Sergey Karpenkov
И потом, что такое "большой проект"? Десктоп? Серверное приложение? Томкат + MSSQL2000 - расчетно-кассовый центр, все расчеты в настройках, чтобы не зависить от законодательства!!!!
...
Рейтинг: 0 / 0
08.12.2005, 11:13
    #33424460
am_sasa
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В чем преимущество использования HIBERNATE
funikovyuri
Это, я так понимаю, вы про хранимые процедуры? А presentation layer у вас тоже на них реализован? 1.получилось без хранимых процедур, хотя это не принципиально, просто пытались не зависить и от типа БД.
2.презентатион ХМЛ+ХСЛТ
...
Рейтинг: 0 / 0
08.12.2005, 11:27
    #33424510
AndreySerj
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В чем преимущество использования HIBERNATE
Несмотря на все плюсы Hibernate, позвольте спросить: А часто ли Ваш проект, особенно большой проект, требует переноса между БД. Как правило, такое случается очень редко, а для БОЛЬШОГО проекта еще реже.
...
Рейтинг: 0 / 0
08.12.2005, 12:57
    #33424866
Sergey Karpenkov
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В чем преимущество использования HIBERNATE
AndreySerjНесмотря на все плюсы Hibernate, позвольте спросить: А часто ли Ваш проект, особенно большой проект, требует переноса между БД. Как правило, такое случается очень редко, а для БОЛЬШОГО проекта еще реже.
Согласен. В условиях проекта под конкретного заказчика такая вероятность практически равно 0. В случае проекта не привязаного к конкретному заказчику такая ситуация вполне вероятна. Во всяком случие минусом системы это никак не станет.
...
Рейтинг: 0 / 0
08.12.2005, 13:43
    #33425034
Sergey Karpenkov
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В чем преимущество использования HIBERNATE
am_sasa Timm
т.е. ты хочешь сказать, что твой программный код использует бд, но при этом не зависит от ее структуры? :-) забавно, для чего тебе тогда бд? выполнять запросы вида
Код: plaintext
select  1 + 5  a from dual
? аха))) вопрос как реализовать логику не имея в памяти объекты реализующие структуру БД - это отдельная тема, вполне решаемая...
зато, при дороботке структуры БД, переписываются SQL запросы и,если потребуются, маленькие кусочки кода!
Ну в случае с Hibernate придётся доработать только описание нового поля а его обработку придётся дорабатывать и в том и в другом случае. Так что никакого выигрыша не вижу. По поводу "не имея в памяти объекты реализующие структуру" я так полагаю вы очень лукавите. Знать структуру данных с которыми работаешь и иметь их представление на уровне объектов это единственный возможный путь. Вы можете конечно хранить полученные наборы записей в массивах или скажем векторах, но сути это не меняет, в любом случае хранить их надо и знать что ты храниш тоже, иначе как потом обрабатывать, кроме того вы сознательно добавляете себе не нужный геморой по парсингу результ сетов в какие то коллекции, не говоря уж о том, что в коллекциях данные безликие, доступ только по индексу и надо всегда помнить, что вот в 3й позиции у меня лицевой счёт а в 10й сумма. Вообщем гимор редкий.
...
Рейтинг: 0 / 0
08.12.2005, 15:10
    #33425329
am_sasa
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В чем преимущество использования HIBERNATE
Sergey Karpenkov
Знать структуру данных с которыми работаешь и иметь их представление на уровне объектов это единственный возможный путь. Знать структуру данных - безусловно, а остальное не верно!
Я сразу сказал,что это отдельный разговор как это сделать...
Sergey KarpenkovВы можете конечно хранить полученные наборы записей в массивах или скажем векторах, но сути это не меняет, в любом случае хранить их надо и знать что ты храниш тоже, иначе как потом обрабатывать правильно, но сделано так,что не зависит от структуры БД! Sergey Karpenkovкроме того вы сознательно добавляете себе не нужный геморой по парсингу результ сетов в какие то коллекции, не говоря уж о том, что в коллекциях данные безликие, доступ только по индексу и надо всегда помнить, что вот в 3й позиции у меня лицевой счёт а в 10й сумма. Вообщем гимор редкий. а это не правильно, можно придумать, как без этого обойтись, сложно,но можно...
А вообще, я не говорил,что надо делать как я, я хотел узнать, чем поможет хибер? теперь кажись понял...
Если программа построена на использовании копии структуры БД в памяти,то хибер - то что надо!!!! так?
...
Рейтинг: 0 / 0
08.12.2005, 15:21
    #33425369
wessen
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В чем преимущество использования HIBERNATE
... можно придумать, как без этого обойтись, сложно,но можно...

уже все давным давно придумали. Hibernate, слышали о таком?
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / В чем преимущество использования HIBERNATE / 25 сообщений из 33, страница 1 из 2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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