spring对象的单实例和多实例 懒加载

来源:互联网 发布:sublime text 3 php 编辑:程序博客网 时间:2024/05/16 00:30

懒加载:

spring默认是不启用 懒加载的,就是说spring在一加载配置文件的时候就实例化了该类,当属性lazy-init="true"的时候 启用懒加载,只有当调用getBean()方法才会实例化该类


单实例和多实例:

spring容器创建对象默认是单例的,无论调用几次getBean()都是在调用一个实例,

当将属性设置为scope="prototype"是,spring创建实例就变成了多例了,每一次调用getBean()方法都会自动创建一个新的实例

<bean id="helloWorld" class="com.mo.entity.HelloWorld" scope="prototype"> </bean>
当该类变成多实例的时候,是自动启动懒加载模式的,因为你每次调用都会创建新的实例,那么如果不启用懒加载,spring一开始创建的实例是没有人用的


单实例的线程安全问题:

不要在该类中定义非静态的变量(static是静态)


0 0