scope 作用域
- Spring 管理的 bean 是根据 scope 来生成的,表示 bean 的作用域,共4种,默认值是 singleton
- singleton:单例,表示通过 IoC 容器获取的 bean 是唯一的
- prototype:原型,表示通过 IoC 容器获取的 bean 是不同的
- request:请求,表示在一次 HTTP 请求内有效
- session:会话,表示在一个用户会话内有效
- request 和 session 只适用于 Web 项目,大多数情况下,使用单例和原型较多
- prototype 模式当业务代码获取 IoC 容器中的 bean 时,Spring 才去调用无参构造创建对应的 bean
- singleton 模式无论业务代码是否获取 IoC 容器中的 bean,Spring 在加载 spring.xml 时就会创建 bean