spring使用工厂模型获取实例化

创建一个Child类继承Wife,不写任何内容:

package entity;

public class Child extends Person{
}

 然后在Wife类中添加静态方法:

/**
     * 静态工厂方法
     * @return
     */
    public static Wife createChild(){
        Child child = new Child();
        child.setName("儿子");
        return child;
    }

然后xml配置:

 

 测试方法:

@Test
    public void fun3(){
        System.out.println("begin!");
        Wife wife = app.getBean("wife", Wife.class);
        System.out.println(wife);
    }

输出结果:

 

 

 

下面是非静态方法:

测试方法:

/**
     * 非静态工厂
     */
    @Test
    public void fun4(){
        System.out.println("begin!");
        Wife wife = app.getBean("wife", Wife.class);
        System.out.println(wife);
    }

新建一个工厂类:

package entity;

public class WifeFactory {
    public Wife createChild(){
        Child child = new Child();
        child.setName("儿子");
        return child;
    }
}

xml配置

 

 运行结果:

 

相关文章

这篇文章主要介绍了spring的事务传播属性REQUIRED_NESTED的原...
今天小编给大家分享的是一文解析spring中事务的传播机制,相...
这篇文章主要介绍了SpringCloudAlibaba和SpringCloud有什么区...
本篇文章和大家了解一下SpringCloud整合XXL-Job的几个步骤。...
本篇文章和大家了解一下Spring延迟初始化会遇到什么问题。有...
这篇文章主要介绍了怎么使用Spring提供的不同缓存注解实现缓...