Spring中IOC创建对象的方式

Posted yamiya

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spring中IOC创建对象的方式相关的知识,希望对你有一定的参考价值。

1、默认使用无参构造的方式,验证下:

public class User {
    private String name;

    public User(){
        System.out.println("这是一个无参构造方法");
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public void show(){
        System.out.println("name="+name);
    }
}
 <bean id="user" class="com.kuang.pojo.User">
        <property name="name" value="yamiya无参"/>
 </bean>

2、使用有参构造方法

public class User {
    private String name;

//    public User(){
//        System.out.println("这是一个无参构造方法");
//    }
    public User(String name){
        this.name=name;
        System.out.println("这是一个有参构造方法");
    }
    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public void show(){
        System.out.println("name="+name);
    }
}

1)下标赋值

    <bean id="user" class="com.kuang.pojo.User">
        <constructor-arg index="0" value="下标赋值"/>
    </bean>

2)类型赋值

不建议使用,如果两个字段类型相同就没法用了。

<!--基本类型可以直接写,引用类型要写全-->
    <bean id="user" class="com.kuang.pojo.User">
        <constructor-arg type="java.lang.String" value="类型赋值"/>
    </bean>

3)直接通过参数设置

   <bean id="user" class="com.kuang.pojo.User">
        <constructor-arg name="name" value="直接通过参数来设置"/>
    </bean>

在配置文件被加载时,容器中管理的对象就已经初始化了,即使你没用到它。

以上是关于Spring中IOC创建对象的方式的主要内容,如果未能解决你的问题,请参考以下文章

Spring学习总结——Spring实现IoC的多种方式

Spring中IOC创建对象的方式

Spring IOC设计原理解析

Spring ioc

Spring-HelloSpring-IOC创建对象的方式

Spring(概念和ioc入门ioc操作xml配置文件)