Варианты использования Spring, Hibernate, JPA и Tomcat с несколькими базами данных - PullRequest
2 голосов
/ 25 июня 2010

У меня есть веб-приложение на Java, работающее под Spring 2.5.6, Hibernate 3.4 (с Hibernate в качестве поставщика JPA) и Tomcat 6. У меня оно работает с одним модулем схемы / постоянства БД, но теперь мне нужно подключиться к 2 схемам / постоянства единиц. Могу ли я сделать это, не переходя в контейнер J2EE, такой как JBoss или Glassfish? Нужно ли использовать что-то вроде JOTM и глобальных / XA транзакций?

Ответы [ 2 ]

4 голосов
/ 25 июня 2010

Если вам нужен доступ к нескольким ресурсам транзакций в рамках одной транзакции, вам потребуется JTA и, следовательно, менеджер транзакций JTA.На уровне Spring это будет означать использование JtaTransactionManager вместо вашего JpaTransactionManager.И если вы не хотите переходить на настоящий сервер приложений Java EE, вам действительно придется использовать автономный менеджер транзакций, такой как JOTM или Atomikos.Я предпочитаю позже, но лично я бы просто перешел на GlassFish.

2 голосов
/ 10 января 2012

Если вы используете Tomcat с spring / hibernate, то с помощью диспетчера транзакций JBoss создайте bean-компонент диспетчера транзакций JTA.

Вот краткое руководство http://ingenious -camel.blogspot.com / 2012/01 / как использовать jboss-Transactions-in-spring.html

...