• Spring学习之路——单例模式和多例模式


    http://www.cnblogs.com/pilihaotian/p/5810887.html

    在Spring中,bean可以被定义为两种模式:prototype(多例)和singleton(单例)

    singleton(单例):只有一个共享的实例存在,所有对这个bean的请求都会返回这个唯一的实例。

    prototype(多例):对这个bean的每次请求都会创建一个新的bean实例,类似于new。

    Spring bean 默认是单例模式。

    实战演示:

    代码详见上一篇文章中的代码。

    在配置文件中,修改这句代码为:

    1 <bean id="hi" class="com.test.Hi" init-method="init" scope="singleton">

    在测试类中,修改代码为:

    1 ApplicationContext context = new FileSystemXmlApplicationContext("applicationContext.xml");
    2         Hi hi1 = (Hi) context.getBean("hi");
    3         Hi hi2 = (Hi) context.getBean("hi");
    4         System.out.println(hi1);
    5         System.out.println(hi2);

    结果为:

    结论:二个变量指向一个对象。

    将配置文件改为:

    <bean id="hi" class="com.test.Hi" init-method="init" scope="prototype">

    其他的不变,运行测试类,结果为:

    结论:每次访问bean,均创建一个新实例。


  • 相关阅读:
    小程序与VUE请求后台接口,传数组
    VUE中使用Echarts图表
    封装一个VUE时间线组件
    Git的使用方法及IDEA与Git的集成(二)
    Git中拥有不同的仓库的不同账户
    IDEA无法集成Git问题
    IDEA之debug学习
    MyBatis 学习(三)
    MyBatis 学习(二)
    MyBatis 学习(一)
  • 原文地址:https://www.cnblogs.com/silyvin/p/9106753.html
Copyright © 2020-2023  润新知