|
|
|
Spring vs Hibernate (Transaction & Cache management)
|
|||
|---|---|---|---|
|
#18+
Уважаемые, Гуру!!! Помогите советом. есть связка spring + hibernate. И там и там есть инструменты управления транзакциями и кэшем. Положить это на уровень spring'a или на уровень hibernate'a ? Можно конечно на спринг, и тогда мы не будем зависеть от конкретной реализации (хиберней или ibatis или ...). Но судя по букварям (spring reference,hibernate reference, spring in action, hibernate in action) в хибернейте более гибкое управление кешем, и код с транзакциями в хибернейте: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. Выглядит попрекрасней чем в спринге: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2007, 15:51:36 |
|
||
|
Spring vs Hibernate (Transaction & Cache management)
|
|||
|---|---|---|---|
|
#18+
а почему бы на spring не использовать декларативное управление транзакциями? Плюс в спринге сможешь интеграционные тесты писать с помощью AbstractTransactionalSpringContextTests ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2007, 15:59:50 |
|
||
|
Spring vs Hibernate (Transaction & Cache management)
|
|||
|---|---|---|---|
|
#18+
Транзакции должны быть завязаны на слой бизнес логики. Поэтому явные транзакции в классах работы с hibernate (DAO) обычно не нужны. И как сказали выше, декларативное управление - наше всё. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2007, 16:02:16 |
|
||
|
Spring vs Hibernate (Transaction & Cache management)
|
|||
|---|---|---|---|
|
#18+
Спасибо за ответы, с транзакциями стало ясно, заюзаю декларативные транзакции через аннотации. А вот с кешированием пока еще не ясно. Хотя наверно сделаю его в хибернейте. Кстати как по "умному" разбивать слои по пакэджам. Например пакэдж BOL(Business Object Layer) а внутри него DAO. На уровне BOL интерфейсы и имплементешины вида MyService.java и MyServiceImpl.java А на уровне DAO пэкаджа соот-но интерфейс MyDao.java и еще один пэкэдж Hibernate с классом MyDaoHibernate.java т.е. графически: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2007, 16:21:58 |
|
||
|
Spring vs Hibernate (Transaction & Cache management)
|
|||
|---|---|---|---|
|
#18+
guest1850Спасибо за ответы, с транзакциями стало ясно, заюзаю декларативные транзакции через аннотации. А вот с кешированием пока еще не ясно. Хотя наверно сделаю его в хибернейте. Кеширование точно так же прикручивается декларативно к хибернейту. В конфиге хибера указывается кто обеспечиваей кеш. А все остальное уже дело настроек самого кеша. guest1850Кстати как по "умному" разбивать слои по пакэджам. Как удобно так и по "умному". Главное чтобы вам было так удобно писать, а другим удобно читать как вы напишете. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2007, 16:29:20 |
|
||
|
Spring vs Hibernate (Transaction & Cache management)
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2007, 16:41:42 |
|
||
|
Spring vs Hibernate (Transaction & Cache management)
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2007, 16:47:12 |
|
||
|
Spring vs Hibernate (Transaction & Cache management)
|
|||
|---|---|---|---|
|
#18+
Разбивает каждый так как ему удобно - но есть интересные идеи - например в maven2 строго определена структура проекта - на вашем месте я бы поискал бы мавеновский артифакт на этот случай жизни ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2007, 14:30:14 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=34925202&tid=2144071]: |
0ms |
get settings: |
16ms |
get forum list: |
23ms |
check forum access: |
6ms |
check topic access: |
6ms |
track hit: |
44ms |
get topic data: |
18ms |
get forum data: |
5ms |
get page messages: |
77ms |
get tp. blocked users: |
3ms |
| others: | 352ms |
| total: | 550ms |

| 0 / 0 |
