spring学习 四 对象的创建

2021-05-23 07:31

阅读:470

标签:stat   学习   back   静态   tor   直接   形参   col   实例   

spring中,有三种创建对象的方式

(1)构造创建

(2)实例工厂构造

(3)静态工厂构造

 

一  构造器创建

在构造器创建对象时,有无参构造和有参构造 两种

(1)在spring中,默认的是无参构造,在applicationContext.xml配置如下,此时com.spring.pojo.People必须有无参构造器,无论是java语言提供的,还是用户自定义的

            
        bean id="peo" class="com.spring.pojo.People">
            
        bean>

(2)有参构造,此时用户必须提供有参构造器,

     
        bean id="peo" class="com.spring.pojo.People">
            
            constructor-arg index="0" value="1">constructor-arg>
            constructor-arg index="1" value="zhangsan">constructor-arg>
        bean>
        
        bean id="peo2" class="com.spring.pojo.People">
            
            constructor-arg name="argid" value="1">constructor-arg>
            constructor-arg name="argname" value="wangwu">constructor-arg>
        bean>
        
         bean id="peo3" class="com.spring.pojo.People">
            
            constructor-arg name="argname" value="赵六">constructor-arg>
        bean>

 

  (二)实例工厂构造

  就是bean的创建是由实例工厂的方法来创建,使用实例工厂,实现要实例化实例工厂,然后调用实例工厂中的创建对象的方法。

配置如下:

 
        bean id="instanceFactory" class="com.spring.factory.PeopleFactory">bean>
        bean id="peo4" factory-bean="instanceFactory" factory-method="newInstance">
        bean>
public class PeopleFactory {
    public People newInstance() {
        return new People();
    }
}

(三)静态工厂

使用静态工厂进行构造,不用像实例工厂先实例化工厂,直接用类调用一个static的创建对象的方法

public class PeopleFactory {
    public static People newInstance() {
        return new People();
    }
}

配置如下:

bean id="peo4" class="com.spring.factory.PeopleFactory" factory-method="newInstance">
        bean>

 

spring学习 四 对象的创建

标签:stat   学习   back   静态   tor   直接   形参   col   实例   

原文地址:https://www.cnblogs.com/cplinux/p/9734962.html


评论


亲,登录后才可以留言!