我正在尝试我的第一个 EJB 与 Glassfish 服务器(一个简单的购物车)。我打算为每个 Http 会话使用 CartBean。如果我的 Cart Bean 正在关注 -
public interface CartLocal {
public void addItem(String item);
public void removeItem(String item);
}
@Stateful
public class CartBean implements CartLocal {
List<String> item = new java.util.ArrayList<String>();
public void addItem(String item) {
....
}
public void removeItem(String item) {
....
}
}
我必须在 web servlet 客户端中使用上述有状态会话 bean,这样对于每个新的 Http 会话,我们都会获得一个新的有状态会话 bean。这样一个用户就有一个购物车。我对在 servlet 中使用会话 bean 的理解是错误的还是下面的代码是错误的,这会为所有用户创建一个有状态会话 bean。
@EJB CartLocal cart;
protected void doGet(....) throws IOException...... {
cart.addItem(....);
}