我使用了Objectify的Appengine來訪問我的數據源。我將Spring用於業務層。爲了玩數據我使用objectify-appengine-spring factory。與Objectify和Appengine進行春季交易
我想使用基於註釋的本地事務。你知道一個我可以直接作爲spring bean插件的現有實現嗎?
我真的想避免使用線程本地實現我自己的事務提供者的痛苦。
我使用了Objectify的Appengine來訪問我的數據源。我將Spring用於業務層。爲了玩數據我使用objectify-appengine-spring factory。與Objectify和Appengine進行春季交易
我想使用基於註釋的本地事務。你知道一個我可以直接作爲spring bean插件的現有實現嗎?
我真的想避免使用線程本地實現我自己的事務提供者的痛苦。
Check LushLife's ObjectifyTransactionManager
here or 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。
我想解決方案只適用於Objectify3。
任何解決方案,我可以在Spring AOP + Objectify4事務中使用事務屬性(強制性,必需等) - XML或註釋?
此外,對於Objectify4 API文檔仍然提到使用ObjectifyFactory方法的BeginTransaction的()我的猜測不再可用。它會給初學者造成困惑。如果文檔被更新以反映最新的行爲,會更有用。我希望我不會錯過任何東西。
哦!有趣的;)你能發佈一個配置(xml)和事務管理器的用法的例子嗎? –
我在搜索如何整合spring&objectify,並發現這個TransactionManager(它不是我的!)。使用傳統的Spring @ Transactional支持方法,瀏覽項目的源代碼,您可以像使用其他代碼一樣使用它。我將用這些信息更新我的答案。 – jelies
感謝您的回答:D –