Spring框架-Bean作用域中单例模式和多例模式的区别
一、单例模式的特点(当没有指定是单例模式还是多例模式的时候,默认是单例模式):
1、Spring容器创建的时候,对应的类的实例化对象一起被创建。
2、不管获取多少次某个类创建的对象,该实例化对象都只会被创建一次。
二、多例模式的特点:
1、Spring容器创建的时候,对应的类的实例化对象不会被创建,只有在被获取的时候才会被创建。
2、每次获取的时候都会创建一个新的实例化对象。
三、下面通过一个案例来演示这两种模式的区别
1、新建一个普通类,包含无参构造方法和有参构造方法,还有一个展示对象信息的方法。
package com.qst.service;
public class EmpServiceImp {
private int id=1;
private String name="张倩";
private String address="浙江杭州";
public EmpServiceImp() {
System.out.println("EmpServiceImp实例化。。。");
}
public EmpServiceImp(int id, String name, String address) {
this.id = id;
this.name = name;
this.address = address;
}
public void showEmp() {
System.out.println(id+"--"+name+"--"+address);
}
}
2、在applicationContext.xml文件中