Весенние сделки с Objectify и Appengine - PullRequest
6 голосов
/ 20 января 2012

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

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

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

Ответы [ 2 ]

3 голосов
/ 20 сентября 2012

Проверьте LushLife's ObjectifyTransactionManager здесь или здесь .

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

<!-- 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.

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

0 голосов
/ 12 апреля 2014

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

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

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...