Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/xpath/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
SpringBeans范围-考虑控制器\服务\存储库_Spring_Scope_Singleton_Prototype - Fatal编程技术网

SpringBeans范围-考虑控制器\服务\存储库

SpringBeans范围-考虑控制器\服务\存储库,spring,scope,singleton,prototype,Spring,Scope,Singleton,Prototype,我的项目中有一个@Controller bean 以及该控制器调用的2个@Service bean 服务使用2个不同的@Repository bean进行持久化 我的问题是: 我的服务器即将同时收到数百个呼叫,我上面描述的所有bean都是scope=“singleton”的,这不是很“尴尬”吗?我应该用“原型”来代替吗?或者可能是spring自动执行此操作?在spring中,默认情况下所有bean都是“单例的”,并且在大多数情况下都应该是这样。我认为在这两种情况下,您将拥有相同数量的对象 bea

我的项目中有一个@Controller bean 以及该控制器调用的2个@Service bean

服务使用2个不同的@Repository bean进行持久化

我的问题是:


我的服务器即将同时收到数百个呼叫,我上面描述的所有bean都是scope=“singleton”的,这不是很“尴尬”吗?我应该用“原型”来代替吗?或者可能是spring自动执行此操作?

在spring中,默认情况下所有bean都是“单例的”,并且在大多数情况下都应该是这样。

我认为在这两种情况下,您将拥有相同数量的对象

bean部署的非单例原型范围导致 每次请求特定的bean实例时,都会创建一个新的bean实例 bean被制作成(也就是说,它被注射到另一个bean中,或者 通过对 容器)。根据经验,您应该使用prototype范围 对于所有有状态的bean,而singleton作用域应该是 用于无状态bean


那不是一句很有见地的话。你能提供更多的信息吗?