Spring对象创建时间

2018-05-29  本文已影响7人  pure_joy

spring创建时间有两种:

1、在默认情况下,启动spring容器的时候创建对象
2、在context.getBean时才创建对象

<bean id="helloworld" class="com.demo.createObject.HelloWorld" lazy-init="true></bean>
注意:

1、默认情况下,因为spring容器启动时候就创建独享,所以只要配置文件书写错误,在一开始的时候(web容器启动)就能发现错误了
2、在spring容器中的独享,默认情况下是单例的;因为对象是单例的,所以只要在类上声明一个属性,该属性中含有数据,那么该属性就是全局的
3、如果说scope为“prototype”的时候,spring容器产生的对象就是多实例的,而且这个时候无论“lazy-init”为什么值,都是在context.getBean时才会创建对象
初始化方法:init-method 销毁方法:destroy-method
在构造函数执行之后立刻执行init方法,如果spring容器没有执行close方法,则不执行init方法;如果spring容器执行close方法,在执行该方法之前会执行销毁方法

sping执行流程

sping执行流程.jpg
上一篇下一篇

猜你喜欢

热点阅读