![]() |
|
Модераторы: LSD, AntonSaburov |
![]()
|
|
| nogoody |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 72 Регистрация: 12.9.2007 Где: Смоленск Репутация: нет Всего: нет |
Задача в следующем... Мой проект построен на Хибернете 3...
Вот простой пример: есть класс А, от него наследуются классы B и С, все приложение прекрасно работает, и вот нам из программы захотелось создать класс D и динамически подключить его... т.е. мы должны создать xml и замапить ее... а еще создать класс и подключить ее к проекту... вот как это сделать динамически, чтобы класс сгенерировался под наш xml? и вообще возможно ли это? я новичок в этом поэтому хотелось бы увидеть пример... помогите... |
|||
|
||||
| tux |
|
|||
![]() Летатель ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1853 Регистрация: 10.2.2005 Где: msk.ru Репутация: 74 Всего: 132 |
Вполне вероятно что возможно, но вряд ли посильно для новичка. Посмотри в сторону cglib и API Hibernate.
|
|||
|
||||
| Tamerlann |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 183 Регистрация: 10.11.2002 Где: Минск, Беларусь Репутация: нет Всего: 2 |
Если бы у нас было более подробное описание проблемы (в частности, зачем именно динамически создавать класс D?) мы могли бы подсказать более простой выходи из ситуации. Я думаю, что необходимость создавать и подключать класс динамически скорее всего на самом деле отсутствует.
--------------------
http://timursdev.blogspot.com/ |
|||
|
||||
| Greg |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 158 Регистрация: 16.9.2006 Где: Беларусь, г.Минск Репутация: 5 Всего: 7 |
По идее, если класс генерируется во время выполнения, то для того, что бы добавить мэпинг придется менять Configuration и билдить заново SessionFactory - а это, насколько мне подсказывает интуиция, может обойтись дорого. Теперь по сути: в пакете Hibernate Tools есть утилита hbm2java, которая умеет на основе мэпингов генерировать исходный код - и это уже что-то. Теперь остается только скомпилировать этот класс во время выполнения. Соотвественно для работы с состоянием объекта, нужно будет использовать Java Reflection API либо напрямую, либо используя утилиты, которые его реализуют и обладают более дружественным API. Вариант короче придумать не получилось ;)
--------------------
Страх перед возможностью ошибки не должен отвращать нас от поисков истины. |
|||
|
||||
| nogoody |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 72 Регистрация: 12.9.2007 Где: Смоленск Репутация: нет Всего: нет |
Спасибо всем кто помог... задача конечно не легкая... хотя и интересная... буду разбираться дальше по докам
|
|||
|
||||
| dementiev |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 114 Регистрация: 8.2.2008 Где: Минск Репутация: 1 Всего: 1 |
Всем привет. Не буду подымать новый тред, т.к. проблема схожая просто дам линк на мой вопрос. Дайте, пожалуйста, пару мыслей, как я могу решить данную проблему: http://www.geomajas.org/node/605 .
Также обсуждение hibernate части вопроса на stackoverflow: http://stackoverflow.com/questions/1037153...ions-in-runtime Заранее спасибо за советы. |
|||
|
||||
![]()
|
| Правила форума "Java" | |
|
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Java EE (J2EE) и Spring | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |