私のプロジェクトの 1 つで、特定の理由からPlatformTransactionManager
. だから私は使用することを余儀なくされましたorg.springframework.transaction.support.TransactionTemplate
。
http://static.springsource.org/spring/docs/2.0.x/api/org/springframework/transaction/support/TransactionTemplate.html
主な利点は、PlatformTransactionManager を正しく実装していれば、手動でコミット/ロールバックする必要がないことです。より具体的なことが必要な場合は、少なくとも TransactionTemplate のソースコードが役立つ場合があります。
使用するのは非常に簡単です:
config.xml
<bean name="transactionTemplate"
class="org.springframework.transaction.support.TransactionTemplate">
<property name="transactionManager" ref="platformTransactionManager"/>
</bean>
MyServiceImpl.java
@サービス
public class MyServiceImpl は MyService を実装します {
@Autowired
プライベート TransactionTemplate transactionTemplate;
public Entity getSomethingWithTx(最終的な長い ID) {
return transactionTemplate.execute(new TransactionCallback<Entity>() {
@オーバーライド
public Entity doInTransaction(TransactionStatus ステータス) {
//TODO実装
}
});
}