1、xml文件scope属性可配置Bean作用范围,或者使用@Scope注解
2、其中request、session、global session属于web作用域,没有研究过用法,一般应用使用这三种scope会导致项目起不来,暂时可以不管。
3、singleton属于默认值,单例模式,由Spring容器管理,生命周期与容器相同。
4、prototype多例,每次使用的时候都会创建一个新的对象,并交给JVM管理。
多例的使用分几种情况:
①多例注入多例:这种情况由于每次请求父级Bean都会创建新的对象,同时进行依赖注入的时候也是新的对象,此时可以使用@Autowired等注解;
②单例注入多例:这种情况由于父级Bean只会创建一次,创建的时候成员变量就会被注入,此时如果使用@Autowired,那么此对象的成员变量就是一个确定的对象,这个时候如果想使用多例,应该使用ApplicationContext.getBean方法去主动获取,每次调用都是一个新的Bean,类似于多次@Autowired