4
Springでは、AOP-proxyのため、同じインスタンスから@Transactional
メソッドを呼び出すことはできません。自己注入を行い、自己プロキシインスタンスからそのメソッドを呼び出すことは良いアイデアでしょうか?何か欠点がありますか?トランザクション用のSpring自己インジェクション
Springでは、AOP-proxyのため、同じインスタンスから@Transactional
メソッドを呼び出すことはできません。自己注入を行い、自己プロキシインスタンスからそのメソッドを呼び出すことは良いアイデアでしょうか?何か欠点がありますか?トランザクション用のSpring自己インジェクション
大丈夫です。 さらに、@Autowired
注釈を使用してこの機能をサポートするためのJira ticketがありました。それはSpring 4.3+
バージョンで修正されました。しかし、xmlベースの設定や、@Resource
アノテーションを使用している場合は、以前のバージョンで動作しています。
あなたはこのチケットの下で議論を見ることができます。 @Transactional
は、このために使用する例oneです:
@Asyncと@Transactional使用の場合に特に興味を持って。
最も洗練された解決策がある場合がありますが、私はそれを数回使用しました。 Spring 4.3では自動自己学習機能が導入され、IMHOの春のサポートは悪いことではありません。 – Vipin
「 」または「@EnableAspectJAutoProxy(exposeProxy = true)」を介して公開されたプロキシインスタンスを使用することもできます([SPR-10454](https:// jira.spring.io/browse/SPR-10454)と[JavaDoc](http://docs.spring.io/spring/docs/current/javadoc-api//org/springframework/context/annotation/EnableAspectJAutoProxy.html# exposeProxy--)。 –
kriegaex