
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
15.08.2006, 16:56
|
|||
|---|---|---|---|
Hibernate mapping и БД |
|||
|
#18+
Сижу разбираюсь с Hibernate'oм. Вот такая проблема Свойство price типа float отображается в БД MySQL 5.0.22 как decimal(10,2) Код: plaintext 1. 2. 3. 4. 5. 6. Код: plaintext 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
16.08.2006, 06:59
|
|||
|---|---|---|---|
|
|||
Hibernate mapping и БД |
|||
|
#18+
Попробуйте проще: Код: plaintext Должно работать. Hibernate сам производит преобразования sql типов в типы данных java и обратно как надо. Не надо ему помогать в этом, тем более, когда это приводит к ошибкам. Прочитать достаточно главу "Basic O/R Mapping" из документации по Hibenrate, там достаточно информации, чтобы сделать то, что Вы хотите. Если не заработает, выкладывайте схему вашей таблицы, класс и маппинг. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
16.08.2006, 09:58
|
|||
|---|---|---|---|
Hibernate mapping и БД |
|||
|
#18+
авторДолжно работать. Hibernate сам производит преобразования sql типов в типы данных java и обратно как надо. Не надо ему помогать в этом, тем более, когда это приводит к ошибкам. Мне ненужна куча цифр после запятой. авторПрочитать достаточно главу "Basic O/R Mapping" из документации по Hibenrate, там достаточно информации, чтобы сделать то, что Вы хотите.Читал уже, sql-type="numeric(10,2)" оттуда. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
16.08.2006, 10:36
|
|||
|---|---|---|---|
|
|||
Hibernate mapping и БД |
|||
|
#18+
Ясно, давайте разбираться вместе. Вот такой пример я сделал, он работает: 1) таблица: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 2) класс: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. +----+-------+ | id | price | +----+-------+ | 1 | 5.10 | | 2 | 10.20 | | 3 | 10.25 | | 4 | 10.26 | +----+-------+ Теперь самое интересное - тестирую в такой конфигурации: Hibernate 3.0, MySql 4.1., JDK 1.5.0. Можете проверить, заработает ли у Вас (в Вашей конфигурации)? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
16.08.2006, 10:39
|
|||
|---|---|---|---|
|
|||
Hibernate mapping и БД |
|||
|
#18+
еще конфигурация (на всякий пожарный): Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
16.08.2006, 16:05
|
|||
|---|---|---|---|
Hibernate mapping и БД |
|||
|
#18+
Спасибо pretender. Короче вот что получмлось, у меня все примерно так же как и pretender написал. Но один фиг работает как-то странно. автор Goods goods=new Goods(); goods.setName("name_1"); goods.setPrice(1234.22f); Goods goods2 = new Goods(); goods2.setName("name_2"); goods2.setPrice(3452f); Transaction t = session.beginTransaction(); try{ session.saveOrUpdate(goods); session.saveOrUpdate(goods2); t.commit(); } catch(HibernateException hex){ t.rollback(); } после этого кода вылетает эксепшн, записывается только первый объект. Полазил по инету, сменил драйвер на mysql-connector-java-3.0.17-ga. Пишется и первый и второй объект. Еще писали, что нужно в парамерах соединения передавать параметр jdbcCompliantTruncation=false, результат он никакого недал. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.08.2006, 06:48
|
|||
|---|---|---|---|
|
|||
Hibernate mapping и БД |
|||
|
#18+
Я сейчас тоже полазил. Действительно, похоже, что это баг в mysql драйвере. Ну, по крайней мере, описание очень похоже. Если стэк-трэйс сравнить (в его jdbc-шной части), то думаю, что сомнения полностью отпадут. Из практики: очень часто было, что натыкались на какую-то проблему в Hibernate, долго матерились, потом выяснялось, сто баг в mysql коннекторе, меняли его на более новый, проблема решалась сама собой и сильно хвалили Hibernate потом. Возможно, это тот самый случай. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=59&mobile=1&tid=2148388]: |
0ms |
get settings: |
6ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
163ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
37ms |
get tp. blocked users: |
1ms |
| others: | 243ms |
| total: | 483ms |

| 0 / 0 |
