关于spring创建实例的三种方式

spring有三种方式创建实例。
分别是构造器,静态工厂,实例工厂。
我们较常用的是使用构造器创建。比如有个Person类:

一,构造器的方式

public class Person{
    private long id;
    private String name;
    //getter,setter方法省略
}

一种是使用无参构造器的方式创建,配置如下:


另一种是使用settter注入属性值,配置如下:


        
        
    

还有一种是使用有参构造器注入属性,此时Person类需要有一个有参构造器,配置如下:

pubic Person(long id,String name){
    this.id = id;
    this.name = name;
}

        
        
    

二,静态工厂的方式

工厂类:
public class StaticFactory {
    
    public static Person createPerson(){
        return new Person();
    }
}
配置静态工厂

三,实例工厂的方式

实例工厂类:
public class PersonFactory {
    
    public Person createPerson(){
        return new Person();
    }
}
配置实例工厂


使用实例工厂创建实例需要先创建工厂实例,再使用工厂创建我们需要的实例。至于是实例工厂与静态工厂是否还有其它区别,暂时还不知道。。。

你可能感兴趣的