zoukankan      html  css  js  c++  java
  • Spring基础(3) : 静态工厂和实例工厂创建bean

    public class Factory {
        public static Person staticCreate(){
            Person p = new Person();
            p.name="staticCreate";
            return p;
        }
    
        public Person instanceCreate(){
            Person p = new Person();
            p.name="instanceCreate";
            return p;
        }
    }
    
      public static void main(String[] args){
            ApplicationContext context = new ClassPathXmlApplicationContext("a.xml");
            Person p1 = context.getBean("p1",Person.class);
            Person p2 =context.getBean("p2",Person.class);
            System.out.println(p1.getName()+" "+p2.getName());
        }
    
    配置:
    <bean id="p1" class="com.Factory" factory-method="staticCreate"/> <bean id="fac" class="com.Factory"/> <bean id="p2" factory-bean="fac" factory-method="instanceCreate"/>

    通过工厂创建bean。

    运行打印:

    staticCreate instanceCreate

    =========================================================================================================================================

    注解方式:

    @Configuration
    public class Factory {
        @Bean("p1")
        public static Person staticCreate(){
            Person p = new Person();
            p.name="staticCreate";
            return p;
        }
        @Bean("p2")
        public Person instanceCreate(){
            Person p = new Person();
            p.name="instanceCreate";
            return p;
        }
    }
     public static void main(String[] args){
            ApplicationContext context = new AnnotationConfigApplicationContext(Factory.class);
            Person p1 = context.getBean("p1",Person.class);
            Person p2 = context.getBean("p2",Person.class);
            System.out.println(p1.getName());
            System.out.println(p2.getName());
        }

    输出:

    staticCreate
    instanceCreate

  • 相关阅读:
    利用dns类和WMI规范获取IP及MAC地址
    vs2010编辑器中代码前的虚线问题
    项目发布方法
    HTML5 声明兼容IE的写法 asp.net 狼
    Jquery总结 狼
    IE、FF、Chrome、兼容性文章 狼
    sql游标实现行列转换 狼
    【狼的格言】 狼
    设计模式提升与加强一 狼
    读Head.First设计模式有感 狼
  • 原文地址:https://www.cnblogs.com/lh218/p/6550647.html
Copyright © 2011-2022 走看看