|
|
|
обработка hibernate ошибок
|
|||
|---|---|---|---|
|
#18+
Добрый день. всегда писал dao методы примерно так: Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. но потом заметил, что Код: java 1. тоже может выкинуть Код: java 1. Тогда подумалось, что стоит вытащить exception в объявление метода, но тогда я не смогу в finally закрывать сессию. P.S. использую hibernate в связке со spring ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.07.2013, 11:56:12 |
|
||
|
обработка hibernate ошибок
|
|||
|---|---|---|---|
|
#18+
redwhite90но потом заметил, что Код: java 1. Использовать вложенный try-блок запрещено по религиозным соображениям: Код: sql 1. 2. 3. 4. 5. 6. ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.07.2013, 17:37:12 |
|
||
|
обработка hibernate ошибок
|
|||
|---|---|---|---|
|
#18+
Basil A. Sidorov, я надеялся на более элегантный способ. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.07.2013, 20:59:17 |
|
||
|
обработка hibernate ошибок
|
|||
|---|---|---|---|
|
#18+
Ну, есть же Spring... Была же тема пару недель назад. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.07.2013, 21:53:00 |
|
||
|
обработка hibernate ошибок
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, да, уже понял, что и сессию можно spring отдельно создавать и обработку через @ExceptionHandler только почему то во всех примерах создания сессии через spring dao методы делаются @transactional ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.07.2013, 11:39:32 |
|
||
|
обработка hibernate ошибок
|
|||
|---|---|---|---|
|
#18+
redwhite90да, уже понял, что и сессию можно spring отдельно создавать и обработку через @ExceptionHandler Какое это имеет отношение к текущей теме redwhite90только почему то во всех примерах создания сессии через spring dao методы делаются @transactional 1) Чтобы не писать всё то что вы привели выше для каждого метода. 2) Чтобы иметь транзакции длиннее чем один метод. С вашим кодом так не выйдет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.07.2013, 11:43:31 |
|
||
|
обработка hibernate ошибок
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, @ExceptionHandler разве никак не относится к этой теме? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.07.2013, 11:46:36 |
|
||
|
обработка hibernate ошибок
|
|||
|---|---|---|---|
|
#18+
@ExceptionHandler это фича Spring MVC К уровню работы с базой данных она отношения не имеет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.07.2013, 11:49:44 |
|
||
|
обработка hibernate ошибок
|
|||
|---|---|---|---|
|
#18+
redwhite90P.S. использую hibernate в связке со spring не заметно ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.07.2013, 12:10:14 |
|
||
|
обработка hibernate ошибок
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, действительно, не работает... а как лучше то тогда сделать? сделать метод throws и обрабатывать на уровне контроллера? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.07.2013, 12:26:27 |
|
||
|
обработка hibernate ошибок
|
|||
|---|---|---|---|
|
#18+
redwhite90а как лучше то тогда сделать? сделать метод throws и обрабатывать на уровне контроллера? Может таки начать использовать Spring? У него уже есть свои обертки вроде DataAccessException ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.07.2013, 12:29:32 |
|
||
|
обработка hibernate ошибок
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, я хочу Spring использовать) угостите примером? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.07.2013, 12:33:10 |
|
||
|
обработка hibernate ошибок
|
|||
|---|---|---|---|
|
#18+
redwhite90я хочу Spring использовать) угостите примером? http://static.springsource.org/spring-data/data-jpa/docs/current/reference/html/ Если мануал не по зубам, то можно начать отсюда http://www.springsource.org/spring-data/jpa там есть ссылки на видео-уроки и github примеров. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.07.2013, 12:38:21 |
|
||
|
обработка hibernate ошибок
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, спасибо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.07.2013, 12:44:54 |
|
||
|
обработка hibernate ошибок
|
|||
|---|---|---|---|
|
#18+
Используйте @Transactional методы. Они ловят все исключения и откатывают транзакцию. более того - при этом не нужно самому явно вызывать session.close(), т.к. @Transactional за это отвечает и мешать ему не надо. Также не нужно самому манипулировать транзакциями: начинать их и коммитить. Оставьте всю работу спрингу ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.07.2013, 14:30:31 |
|
||
|
|

start [/forum/topic.php?desktop=1&fid=59&tid=2128942]: |
0ms |
get settings: |
14ms |
get forum list: |
24ms |
check forum access: |
6ms |
check topic access: |
6ms |
track hit: |
42ms |
get topic data: |
19ms |
get forum data: |
4ms |
get page messages: |
88ms |
get tp. blocked users: |
3ms |
| others: | 287ms |
| total: | 493ms |

| 0 / 0 |
