实例化bean共有三种方式

来源:互联网 发布:数据分析需要什么专业 编辑:程序博客网 时间:2024/04/29 08:52

实例化bean共有三种方式

1.使用类构造器实例化

<bean id="orderService" class="包名.pojo.OrderServiceBean" />

2.使用静态工厂方法实例化

<bean id="orderService" class="包名.service.OrderFactory"     factory-method="createOrder" />

public class OrderFactory{
        public static OrderServiceBean createOrder(){
                return new OrderServiceBean();
        }
}

测试

    public class SpringTest{
        @BeforeClass
        public static void setUpBeforeClass() throws Exception{
        }
       
        @Test
        public void instanceSpring(){
            ApplicationContext ctx = new ClassPathXmlApplicationContext("beans.xml");
            OrderServiceBean orderService = (OrderServiceBean)ctx.getBean("orderService");
            orderService.save();
           
        }

    }

3.使用实例工厂方法实例化(即先要实例化工厂,然后再利用这个实例化的工厂)

<bean id="personServiceFactory" class="包名.service.OrderFactory"/>
<bean id="personService"        factory-bean="personServiceFactory"     factory-method="createOrder" />

public class OrderFactory{
        public OrderServiceBean createOrder(){
                return new OrderServiceBean();
        }
}


测试

    public class SpringTest{
        @BeforeClass
        public static void setUpBeforeClass() throws Exception{
        }
       
        @Test
        public void instanceSpring(){
            ApplicationContext ctx = new ClassPathXmlApplicationContext("beans.xml");
            PersonService personService = (personService)ctx.getBean("personService");
            personService.save();
           
        }

    }

原创粉丝点击