spring 中prototype 和 reqeust的区别
?
?
我们知道,spring有singleton和prototype作用域,而且从spring2.0开始,又增加了三种作用域,request、session、global session。session、global session的作用域是HTTP session和全局session。对于request和prototype,每一次请求都会产生一个新的bean实例,那么它们的具体有什么区别呢?而且,Spring不能对一个prototype bean的整个生命周期负责,这一点我不太能理解,这样它占用的资源就很高昂了,那么prototype的好处是什么?要结束它的生命周围,要怎么做?而且,感觉request和prototype,除了prototype的生命周期不会被回调以外,它们的作用是不是一样?有什么具体的区别呢??
?
?
这是转自?http://www.iteye.com/problems/3104?的文章..这里面只说到了 "request是web里所特有的"?
而我正好做到类似的应用 ?自己测试了下.... 把scope改成 reqeust 在struts2接受请求时是会报错的...大概的意思是不能将action和scope(作用域)是request的bean 结合使用, ?其实我们用request或者prototype 的目的很明确,就是为了保证action的线程安全,因为spring默认的 scope是?singleton 单例模式的,,?
?
然后我将scope改成prototype?后,action变成线程安全的了.就是每次访问都是新的实例,这点我测试过,能确定,
但这就让我产生一个疑问? ?什么时候才可以用request??他和prototype?的区别是??????? ?请高人回答
?
?
?
?
?
?
?
?