| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Java EE (J2EE) и Spring > Вопросы по Hibernate |
| Автор: garbuz 23.6.2008, 12:08 |
| Здраствуйте! Я только начал осваивать Hibernate. Написал простенький пример: Описал для своего класса файл MyClass.hbm.xml, описал файл конфигурации. После создания и открытия сессии создаю объект своего класса, через методы set устанавливаю поля. Объект заносится в базу. Все вроде работает. Сразу появилось несколько вопросов (уверен, что дальше их количество увеличится 1) В каких случаях надо использовать маппинг для классов (имею ввиду файлы .hbm.xml), а в каких аннотации (@Table, @Id etc). И какая разница между тем и другим подходом. 2) В своем простом примере я занес объект в базу через сеттеры. При этом у меня отстутствуют sql-запросы вообще. А если мне потребуется выбрать объект по каким-то заданным параметрам? Запрос ведь необходим? Hibernate же не исключает запросы как факт. Вопрос тогда в каком виде и куда их писать? Как вызывать? 3) Когда пишу файл вида hbm.xml как в нем организовать связь между таблицами, желательно примерчик один ко многим и многие ко многим Заранее спасибо за ответы. Думаю у меня еще будет много вопросов |
| Автор: taro 23.6.2008, 12:26 |
| 1. нет особых случаев. Это просто два разных варианта 2. для запросов по параметрам есть соответствующие методы, принимающие, кроме класса, дополнительные параметры. Для создания запросов "высоким штилем" читай доку по HQL. Кроме того, можно использовать и нативный SQL 3 http://www.hibernate.org/hib_docs/v3/reference/en/html/tutorial.html#tutorial-associations Необходимо понимать, что в представлении ORM речь идет не о связи между таблицами, а о связи между объектами. |
| Автор: garbuz 23.6.2008, 14:21 |
| 1) Т.е. я сам могу выбрать что использовать, и одно и другое правильно работает просто по-разному описывается. Правильно я понял? 2) Буду разбираться, желательно скиньте плз ссылочку об этом, если есть на русском, то вообще хорошо 3) Вроде как понял |
| Автор: iluvatar 23.6.2008, 16:10 |
| Вот официальная http://www.hibernate.org/hib_docs/v3/reference/en/html_single/. На английском, конечно, но в нашем деле по другому никак. По поводу сложных запросов - смотри в сторону Criteria и HQL. И примеры меппинга там тоже очень хорошо написаны. |
| Автор: powerOn 23.6.2008, 16:33 |
| Модератор: 1) Один топик - один вопрос. 2) Название темы должно отражать её суть. 3) Правила форума тут: http://forum.vingrad.ru/index.php?act=boardrules Тема закрыта. |