spring 中的scope=“prototype” 和scope=“singleton” 区别

默认不设置 是singleton状态,一般action要用prototyepe,其他用singleton。

有状态会话bean   :每个用户有自己特有的一个实例,在用户的生存期内,bean保持了用户的信息,即“有状态”;一旦用户灭亡(调用结束或实例结束),bean的生命期也告结束。即每个用户最初都会得到一个初始的bean。 (即 只要是带数据成员变量的类,防止多个线程混用数据,不能用singleton,要用prototype

无状态会话bean   :bean一旦实例化就被加进会话池中,各个用户都可以共用。即使用户已经消亡,bean   的生命期也不一定结束,它可能依然存在于会话池中,供其他用户调用。由于没有特定的用户,那么也就不能保持某一用户的状态,所以叫无状态bean。但无状态会话bean   并非没有状态,如果它有自己的属性(变量),那么这些变量就会受到所有调用它的用户的影响,这是在实际应用中必须注意的

posted @ 2017-09-14 15:44  MrLiub  阅读(1199)  评论(0编辑  收藏  举报