在无状态bean中注入有状态Bean

问题描述 投票:0回答:2

当使用stateful session beanstateless session bean中注入DI时,究竟发生了什么:容器是否为每个无状态bean(存在于池中)注入了一个新的有状态bean实例,或者它们是否在它们之间共享?

为什么表明在这种情况下使用JNDI比DI更好?

我真的没有那个。

dependency-injection ejb-3.0 jndi stateful-session-bean stateless-session
2个回答
0
投票

基本上将状态注入无状态是没有意义的,因为有状态将由许多客户端共享,如果它们恰好获得相同的无状态实例,或者一个客户端也可以访问不同的有状态实例,如果它访问不同的无状态实例。

是否使用JNDI,在这种情况下没有任何区别。许多客户端不能共享有状态,并且每个statelss实例都是不同的客户端。如果您将使用JNDI,那么根据您执行查找的位置,您可以在每次调用无状态时结束新的有状态实例。

你有没有理由为无状态注入有状态?


0
投票

对于每个会话,@ Statefull将是新实例。 @Statefull不是直接实例,它是一个代理,甚至在@Stateless内部每次需要时都可以更改

© www.soinside.com 2019 - 2024. All rights reserved.