powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Hibernate, что в тренде? :)
25 сообщений из 56, страница 1 из 3
Hibernate, что в тренде? :)
    #39549198
Imperous
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всем привет!

По следам фреймворка spring пришел к hibernate. И тут началось...
Старенькое конфигурирование спринговых xml вперемешку с аннотациями, hibernate.cfg.xml и *.hbm.xml файлы, persistence.xml.
Да что же это за зверь-то такой, где у него хвост и голова???

Из того что встречалось - много примеров, все разные, ряд просто устаревших, некоторые настолько дикие, что не верится в то что это вообще правильные примеры.

Написал кучу хелловорлдов, и остался крайне недоволен.

Подскажите пожалуйста, пошаговую литературу с современным подходом использования hibernate, с конкретными примерами.
...
Рейтинг: 0 / 0
Hibernate, что в тренде? :)
    #39549216
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Imperousследам фреймворка spring пришел к hibernate. И тут началось...
)).
Надо так:
Спринг без хибера, потом хибер без спринга, потом всё вместе

А вы наборот, первое блюдо смешали со вторым.
Вот и всё.
...
Рейтинг: 0 / 0
Hibernate, что в тренде? :)
    #39549217
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Imperous,
Всё что связано с XML - сразу нафиг
"спринговых xml" - никаких XML. Только Java и немного аннотаций.
hibernate.cfg.xml - нафиг Hibernate API. Только JPA, Hibernate исключительно как реализация.
*.hbm.xml - это вообще допотопное и устаревшее. Маппинг только JPA аннотациями.
persistence.xml - нафиг. Оно только в JEE нужно.

Spring Boot + Spring Data

Вот, вроде, норм пример:
https://github.com/spring-projects/spring-boot/tree/master/spring-boot-samples/spring-boot-sample-data-jpa/src/main/java/sample/data/jpa
...
Рейтинг: 0 / 0
Hibernate, что в тренде? :)
    #39549231
Фотография Usman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Hibernate, что в тренде? :)
    #39549237
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BlazkowiczSpring Boot + Spring Data
Ну, если только он опять не потеряется в бут+спринг+jpa+хибер+бд.
...
Рейтинг: 0 / 0
Hibernate, что в тренде? :)
    #39549292
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ImperousВсем привет!

По следам фреймворка spring пришел к hibernate. И тут началось...
Старенькое конфигурирование спринговых xml вперемешку с аннотациями, hibernate.cfg.xml и *.hbm.xml файлы, persistence.xml.
Да что же это за зверь-то такой, где у него хвост и голова???
Сразу вброшу несколько поинтов.
1) Вы выхватили одну из самых сложных частей Java/Spring/JPA
2) Да. Большинство примеров в сети - безнадежно устарели.
3) Вы должны знать и понимать как работает реляционная DBMS. Экспертом быть не надо
но вы должны хотя-бы понимать коды ошибок конкретной реализации (PostgreSQL/MySQL e.t.c)
и знать что они означают и как ситуацию фиксить на уровне чистого SQL.

Самый лучший способ узнать Hibernate - это влиться в живой проект и какое-то
время порешать баги или просто посмотреть что народ коммитит.
...
Рейтинг: 0 / 0
Hibernate, что в тренде? :)
    #39549345
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вопрос конечно интересный.
Нужно ли знать DAO, если спринг всё генерит за вас и абстрагирует).
Думаю всё индивидуально для каждого.
Не получилось понять магию спринга - изучать без спринга (под капотом).
Се ля ви.
...
Рейтинг: 0 / 0
Hibernate, что в тренде? :)
    #39549349
fplab
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мне очень помогла "Изучаем JavaEE 7" Энтони Гонсалвеса (главы 4, 5, 6), посвященные jpa.
Потом читал туториалы на сайте hibernate. Попутно делал небольшие проекты, чтобы набить руку. И, как опупеоз, купил ( JAVA PERSISTENCE API И HIBERNATE ). Но, каюсь, уже месяца 3 как пытаюсь плотно заняться этой книгой, все недосуг :)
...
Рейтинг: 0 / 0
Hibernate, что в тренде? :)
    #39549369
Imperous
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonСразу вброшу несколько поинтов.
1) Вы выхватили одну из самых сложных частей Java/Spring/JPA
2) Да. Большинство примеров в сети - безнадежно устарели.
3) Вы должны знать и понимать как работает реляционная DBMS. Экспертом быть не надо
но вы должны хотя-бы понимать коды ошибок конкретной реализации (PostgreSQL/MySQL e.t.c)
и знать что они означают и как ситуацию фиксить на уровне чистого SQL.

Самый лучший способ узнать Hibernate - это влиться в живой проект и какое-то
время порешать баги или просто посмотреть что народ коммитит.

SQL вообще не проблема, опыта предостаточно.
...
Рейтинг: 0 / 0
Hibernate, что в тренде? :)
    #39549378
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ImperousmaytonСразу вброшу несколько поинтов.
1) Вы выхватили одну из самых сложных частей Java/Spring/JPA
2) Да. Большинство примеров в сети - безнадежно устарели.
3) Вы должны знать и понимать как работает реляционная DBMS. Экспертом быть не надо
но вы должны хотя-бы понимать коды ошибок конкретной реализации (PostgreSQL/MySQL e.t.c)
и знать что они означают и как ситуацию фиксить на уровне чистого SQL.

Самый лучший способ узнать Hibernate - это влиться в живой проект и какое-то
время порешать баги или просто посмотреть что народ коммитит.

SQL вообще не проблема, опыта предостаточно.
тогда забей хиюер - меньше проблем. эта прокладка только для тех кто с sql не дружит. чтоб не видно было как обсираются.
...
Рейтинг: 0 / 0
Hibernate, что в тренде? :)
    #39549380
Imperous
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Usman- Spring Data JPA - Reference Documentation
- Chapter 15. Criteria Queries
- Hibernate Validator ( docs )

на первый взгляд сурово выглядит.
спасибо!
...
Рейтинг: 0 / 0
Hibernate, что в тренде? :)
    #39549383
Imperous
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадя,

та ну как так, врага надо знать в лицо! :)
...
Рейтинг: 0 / 0
Hibernate, что в тренде? :)
    #39549385
Фотография Usman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123Нужно ли знать DAO , если спринг всё генерит за вас и абстрагирует).+1.5

DAO / DAL застрял между паттернами Repository и Service Layer (в т.ч. и @Service)
...
Рейтинг: 0 / 0
Hibernate, что в тренде? :)
    #39549396
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Usman DAO / DAL застрял между паттернами Repository и Service Layer (в т.ч. и @Service)

Народ до сих пор по инерции DAO на всё говорит. Даже в недавнем докладе с JUG было SomeDAO extends JpaRepository :)
...
Рейтинг: 0 / 0
Hibernate, что в тренде? :)
    #39549402
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Usmanзастрял между паттернами
Не очень понял эту фразу. Никто нигде не застревал.
DAO - конкретный паттерн. Задача DAO класса инкапсулировать доступ к конкретному способу хранения объекта, в частности JDBC+SQL. С появлением продвинутых API вроде jOOQ и JPA - DAO стал не нужен, так как инкапсулировать там особо нечего уже.
Service Layer aka Transaction Script тоже имеет конкретное предназначение - реализовавать workflow бизнес-логики, а так же основных фасадом приложения, с которым работают пограничные слои.
Задача Repository - инкапсулировать запросы.
Вроде всё просто.

DAO не нужен, так как его польза нивелирована современными библиотеками.
Repository нужен, так как сложные запросы нужно выносить из сервиса.
Вполне логичный тренд.
...
Рейтинг: 0 / 0
Hibernate, что в тренде? :)
    #39549413
Фотография Usman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BlazkowiczНе очень понял эту фразу. Никто нигде не застревал .забыл заключить в кавычки (:BlazkowiczDAO - конкретный паттерн. Не совсем паттерн , на мой взгляд, это нечто среднее между сервисом и репозиторием:
- Repository - это чистый CRUD
- Service - бизнес-логика (иногда я называю - совокупностью репозиториев )

в то время, как DAO может быть и CRUD и одновременно хранить некую бизнес-логику (проверки/валидация и т.д.).

имхо-имховое
...
Рейтинг: 0 / 0
Hibernate, что в тренде? :)
    #39549425
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BlazkowiczDAO стал не нужен, так как инкапсулировать там особо нечего уже.
Как нечего?
Оно осталось только внутри.
Спринг его спрятал.
Сам спринг ничего не делает).
А основная фича преподносится, что мы можем за jpa заменить хибер чем нибудь другим.
Imho паттерн абстрагироваться через чур сильно везде где ни попадя.
JavaEE этим грешил и помер.
...
Рейтинг: 0 / 0
Hibernate, что в тренде? :)
    #39549426
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Usman,
+1
По мне, лучше чтобы это были 2 ветки. И параллельно развивались.
И спринг не лез особо в ОРМ.
...
Рейтинг: 0 / 0
Hibernate, что в тренде? :)
    #39549444
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123Как нечего?

Вот так. Вся работа с базой и соответствующий boilerplate код уже спрятаны куда подальше.

Petro123Оно осталось только внутри.

Правильно, поэтому зачем это всё заворачивать ещё в один слой?

Petro123А основная фича преподносится, что мы можем за jpa заменить хибер чем нибудь другим.

Это ерунда. Никто не меняет коней наскоку. Меня больше всего умиляло когда спрашиваешь на собеседованиях про MVC и народ распинается, что можно менять реализации слоёв. Никому это нафиг не надо. Никто не будет менять JPA на jOOQ в середине проекта. Так можно любой паттерн описать. Зачем нужен Service Layer*? Ну чтобы в нём написать логику с одними либами, и всегда можно было заменить на логику с другими либами. Ерунда же.
...
Рейтинг: 0 / 0
Hibernate, что в тренде? :)
    #39549451
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BlazkowiczНикто не меняет коней наскоку
+5
...
Рейтинг: 0 / 0
Hibernate, что в тренде? :)
    #39549506
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Imperousвадя,

та ну как так, врага надо знать в лицо! :)
ну с этим не поспоришь
...
Рейтинг: 0 / 0
Hibernate, что в тренде? :)
    #39549776
Imperous
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BlazkowiczImperous,
Всё что связано с XML - сразу нафиг
"спринговых xml" - никаких XML. Только Java и немного аннотаций.
hibernate.cfg.xml - нафиг Hibernate API. Только JPA, Hibernate исключительно как реализация.
*.hbm.xml - это вообще допотопное и устаревшее. Маппинг только JPA аннотациями.
persistence.xml - нафиг. Оно только в JEE нужно.

Spring Boot + Spring Data

Вот, вроде, норм пример:
https://github.com/spring-projects/spring-boot/tree/master/spring-boot-samples/spring-boot-sample-data-jpa/src/main/java/sample/data/jpa
нафиг Hibernate API - в смысле "нафиг"? я же за ним и пришел )

Загрузил весь проект, ох там конечно примеров, гора целая.
Может я чего-то не понял, но в указанном примере Hibernate - нет. Просмотрел, но пока не дощупал...
Спасибо!
...
Рейтинг: 0 / 0
Hibernate, что в тренде? :)
    #39549794
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Imperousнафиг Hibernate API - в смысле "нафиг"? я же за ним и пришел )

Не нужно игнорировать непонятные термины. Нужно их изучать. API это то что вы используете в своём коде. А "реализация" это то что работает когда ваш код выполняется. Так вот Hibernate API вам для начала не нужен. А нужен JPA API. А Hibernate вам нужен только как JPA реализация.

ImperousЗагрузил весь проект, ох там конечно примеров, гора целая.
Ну, я же дал ссылку только на Spring Data JPA. Небольшой полноценный Hello World того что вы ищете.

ImperousМожет я чего-то не понял, но в указанном примере Hibernate - нет. Просмотрел, но пока не дощупал...

Да. Он как бы не очевиден.
Но вот тут
https://github.com/spring-projects/spring-boot/blob/master/spring-boot-samples/spring-boot-sample-data-jpa/pom.xml
в зависимостях находится spring-boot-starter-data-jpa
У которого в зависимостях:
https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-data-jpa/2.0.0.M5
находится тот самый Hibernate.
...
Рейтинг: 0 / 0
Hibernate, что в тренде? :)
    #39549856
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Imperousно в указанном примере Hibernate - нет.
Выше про DAO и ОРМ маппинг читали посты?
За спрингом это сложно осознать.
Выбирайте варианты и дерзайте).
Удачи!
...
Рейтинг: 0 / 0
Hibernate, что в тренде? :)
    #39549964
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяImperousпропущено...


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


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