您的位置:首页 > 编程语言 > Java开发

spring属性配置执行过程,单列和原型区别

2016-10-07 21:57 309 查看
  Spring配置中,采用属性注入时,当创建IOC容器时,也直接创建对象,并且执行相对应的setter方法

Student.java

1 package com.scope;
2
3 import org.springframework.context.ApplicationContext;
4 import org.springframework.context.support.ClassPathXmlApplicationContext;
5
6 public class Main {
7     public static void main(String[] args) {
8         ApplicationContext ctx = new ClassPathXmlApplicationContext("beans-scope.xml");
9         Student student1 = (Student) ctx.getBean("student1");
10         Student student2 = (Student) ctx.getBean("student1");
11         System.out.println(student1 == student2);
12     }
13 }


View Code
执行结果



在执行Student student1 = (Student) ctx.getBean("student1"); Student student2 = (Student) ctx.getBean("student1");创建了两个对象,所以输出了false。

采用prototype模式时,只有在获取bean时,才开始创建对象,获取多少次就创建多少个对象。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: