服务器在GlassFish 3.0上运行无状态会话Bean中的实例变量 - 状态是如何维护的?
@Stateless(mappedName="messengerservice")
public class MessengerService implements MsnService{
int count;
@Override
public int getCount() {
// TODO Auto-generated method stub
count = count+1;
return count;
}
}
客户
for(int i=0;i<5;i++){
MsnService br = (MsnService) ctx.lookup("java:global/EJbTutorial/MessengerService");
System.out.println(br.getCount());
}
输出
1
2
3
4
5
EJB规范说服务器维护会话bean的池,我增加val在一种情况下,重新查找希望得到一个新的实例,它似乎实例变量值保持
这怎么可能?除非服务器每次都一直给我返回相同的实例,或者是。
我甚至试过它在一个循环中执行它并得到相同的结果。 可以在任何提供一些线索
如果一次只有一个请求,那么容器只需要创建一个bean实例。如果您在并行线程中运行多个客户端,则应该看到有多个bean在运行。 –
@汤姆安德森当然没有。谢谢 – Sudhakar