答:
spring有五种作用域,分别为singletone、prototype、request、session、global,可以在spring配置bean的scope属性指定
其中singleton是spring默认的作用域,生命此作用域的bean会一直存在于springbean容器中直到程序退出,bean的初始化时机可以在系统启动时或者调用时初始化,由bean属性的lazy_init属性指定,默认初始化调用的是bean的构造方法,也可以指定具体的方法,由method-intit方法指定,bean的销毁调用的是bean的destory方法。
prototype:作用域声明的bean,是在每次调用时都会生成一个实例,通常是有状态bean,然后生成的这个bean就由程序控制,spring就不管了,知道程序退出,此bean也将交由垃圾回收器进行回收。
request、session、global声明的bean是针对web容器进行的,会根据当前会话生成一个bean对象。