我有两个豆子:一只管理一只股票,另一只管理两只股票之间的波动。因此,在MovStock bean中有:
@EJB
private Stock stock1;
@EJB
private Stock stock2;
[...]
public void setStocks(int idStock1, int idStock2) {
stock1.loadStock(idStock1);
stock2.loadStock(idStock2);
}在我的代码中的某个地方,在另一个bean上,我做了:
@EJB
private MovStock movStock;
[...]
movStock.setStocks(10,20);但这导致stock1和stock2持有相同的股票(20)。当然,我做错了什么,但是使用@PersistenceContext等的同一个bean的多个实例的正确方法是什么呢?
谢谢
发布于 2013-12-24 15:38:44
Bean是容器管理的。所以你不必担心实例。容器将在需要时创建新的容器,但它将具有相同的状态(如果是Statefull)。看起来Stock不应该是Enterprise,而应该是DTO。您不应该对EJB执行数据操作,EJB应该在适当的结构(DTO)上执行它。
https://stackoverflow.com/questions/20763084
复制相似问题