Springのトランザクションテンプレートを使用してプログラムでトランザクションを開始するメソッドがあります。
Void methodA() {
TransactionTmeplate..........
Setpropgation to requires new....
/// do my stuff in trasaction
}
したがって、このメソッドを呼び出す別のクラスがある場合は、予想どおり、トランザクションが作成されます。しかし、このメソッドが同じ呼び出しスレッドから再度入力された場合はどうなりますか。別のトランザクションが作成されますか?
例:
MethodCaller -> methodA (transaction created) -> methodD -> methodA(??)
続く:
また、クラスが@autowired
の場合、1つのインスタンスが存在することを考慮して、2つの呼び出しスレッドが同じトランザクションを共有することはありますか?
メソッドのスタックに独自のエントリがあるので、私はそうは思わないでしょう。