Spring 实例化类三种方法

来源:互联网 发布:电信移动网络如何连接 编辑:程序博客网 时间:2024/06/08 00:33
1    public class User {
    public void add()
    {
        System.out.println("add.............");
    }
    public static void main(String[] args)
    {
        User user = new User();
        user.add();
    }
}
// 配置文件如下:
<bean id="user" class="com.grl.ioc.User"></bean>
public class TestIOC {
    @Test
    public void test()
    {
        //加载核心配置文件
        ApplicationContext context = new ClassPathXmlApplicationContext("bean1.xml");

        //得到配置创建对象
        User user =(User)context.getBean("user");
        System.out.println(user);
        user.add();
    }
}
2 静态 工厂模式:
public class bean2 {

    public void add()
    {
        System.out.println("bean2.。。。。。");
    }
}
//此处一定要是静态的工厂类
public class bean2Factory {

    public static bean2 getbean2()
    {
        return new bean2();
    }
}
// 配置文件

>**<bean id ="Bean2" class="com.grl.bean2.bean2Factory">factory-method="getbean2"></bean>**
**
//测试代码


public class TestIOC {
    @Test
    public void test()
    {
        //加载核心配置文件
        ApplicationContext context = new ClassPathXmlApplicationContext("bean1.xml");
        //得到配置创建对象
        bean2 user =(bean2)context.getBean("Bean2");
        System.out.println(user);
        user.add();
    }
}
3 实例工厂创建:

public class Bean3 {
    public void add()
    {
        System.out.println("Bean3...........");
    }
}
public class bean3Factory {
    public Bean3 getbean3()
    {
        return new Bean3();
    }
}
// 配置文件

<beanid="bean3Factory"class="com.grl.bean2.bean3Factory"></bean>>

<bean id ="Bean3" factory-bean="bean3Factory" factory-method="getbean3"></bean>


//测试代码

public class TestIOC {
    @Test
    public void test()
    {
        //加载核心配置文件
        ApplicationContext context = new ClassPathXmlApplicationContext("bean1.xml");
        //得到配置创建对象
        Bean3 user =(Bean3)context.getBean("Bean3");
        System.out.println(user);
        user.add();
    }
}
原创粉丝点击