5

Я использую appengine с Objectify для доступа к источнику данных. Я использую Spring для своего бизнес-уровня. Чтобы играть с данными, я использую objectify-appengine-spring factory.Весенние транзакции с Objectify и Appengine

Я хотел бы использовать локальные транзакции на основе аннотаций. Знаете ли вы о существующей реализации, которую я мог бы подключить непосредственно в качестве весеннего боба?

Мне бы очень хотелось избежать боли при реализации моего собственного поставщика транзакций с местными жителями.

ответ

2

Проверьте LeshLife's ObjectifyTransactionManagerhere или here.

Spring XML конфигурации требуется (вы можете найти его here или here):

<!-- ObjectifyManager --> 
<bean id="objectifyManager" class="ex.objectify.spring.ObjectifyManager"> 
     <property name="basePackage" value="gso.model" /> 
</bean> 

<!-- ObjectifyFactoryBean --> 
<bean id="objectifyFactory" class="ex.objectify.spring.ObjectifyFactoryBean"> 
     <property name="manager" ref="objectifyManager" /> 
</bean> 

<!-- Custom TransactionManager implementation --> 
<bean id="transactionManager" class="ex.objectify.spring.ObjectifyTransactionManager"> 
     <property name="manager" ref="objectifyManager" /> 
</bean> 

<!-- Necesary to enable use of @Transactional in your services --> 
<tx:annotation-driven /> 

Не забудьте аннотировать транзакционные методы или классы с @Transactional.

Особая благодарность автору этого project.

+0

Oh! Интересно;) Можете ли вы опубликовать пример конфигурации (xml) и использования диспетчера транзакций? –

+0

Я искал, как интегрировать Spring & objectify и нашел этот TransactionManager (это не мое!). При просмотре исходного кода проекта вы можете увидеть, что он используется, как и любой другой, используя классический подход поддержки '' Transactional' Spring'. Я собираюсь обновить свой ответ с помощью этой информации. – jelies

+0

Спасибо за ответ: D –

0

Я думаю, что решение работает только для Objectify3.

Любое решение, в котором я могу использовать атрибуты транзакций (ОБЯЗАТЕЛЬНЫЕ, НЕОБХОДИМЫЕ и т. Д.) В Spring AOP + Objectify4 транзакции - XML ​​или аннотация?

Кроме того, API Docs для Objectify4 до сих пор упоминает использование ObjectifyFactory метод BeginTransaction() который я предполагаю, больше не доступен. Это создает путаницу для новичков. Было бы более полезно, если документы будут обновлены, чтобы отражать последнее поведение. Надеюсь, я ничего не пропустил.

Смежные вопросы