usingstateful session bean
内にを注入すると、正確には何が起こりますか: コンテナーはステートレス Bean (プールに存在する) ごとにステートフル Bean の新しいインスタンスを注入しましたか、それともそれらの間で共有される同じインスタンスですか?stateless session bean
DI
JNDI
この場合の使用が DI よりも優れていることが示されているのはなぜですか?
よくわかりませんでした。
usingstateful session bean
内にを注入すると、正確には何が起こりますか: コンテナーはステートレス Bean (プールに存在する) ごとにステートフル Bean の新しいインスタンスを注入しましたか、それともそれらの間で共有される同じインスタンスですか?stateless session bean
DI
JNDI
この場合の使用が DI よりも優れていることが示されているのはなぜですか?
よくわかりませんでした。
セッションごとに @Statefull が新しいインスタンスになります。@Statefull は直接のインスタンスではなく、プロキシであり、 @Stateless 内でも必要なときにいつでも変更できます
基本的に、ステートフルをステートレスに注入することは意味がありません。そのステートフルは、たまたま同じステートレス インスタンスを取得した場合に多くのクライアントによって共有されるか、1 つのクライアントが異なるステートレス インスタンスにアクセスする場合、異なるステートフル インスタンスにもアクセスできるためです。
この場合、JNDI を使用するかどうかは関係ありません。ステートフルは多数のクライアントで共有できず、各ステートレス インスタンスは異なるクライアントです。JNDI を使用する場合、ルックアップを行う場所によっては、ステートレスへのすべての呼び出しで新しいステートフル インスタンスになる可能性があります。
ステートレスにステートフルを注入したい理由はありますか?