Spring学习之编程式使用IOC容器

    Bean定义

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://www.springframework.org/schema/beans
           http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">
	<bean id="student" class="com.model.Student">
		<property name="id" value="1001"></property>
		<property name="name" value="zhangsan"></property>
	</bean>
</beans>

     

   测试代码

package com.spring.test;

import org.apache.log4j.Logger;
import org.springframework.beans.factory.support.DefaultListableBeanFactory;
import org.springframework.beans.factory.xml.XmlBeanDefinitionReader;
import org.springframework.core.io.ClassPathResource;

import com.model.Student;

public class Test001 {
    private static final Logger logger = Logger.getLogger(Test001.class);

    public static void main(String[] args) {
        // 资源抽象文件,包含Bean的定义信息
        ClassPathResource res = new ClassPathResource("applicationContext.xml");

        // Bean工厂的IOC容器
        DefaultListableBeanFactory factory = new DefaultListableBeanFactory();

        // BeanDefinition读取器,默认将Bean的定义存放到factory中
        XmlBeanDefinitionReader reader = new XmlBeanDefinitionReader(factory);

        // 将资源抽象文件里面的Bean存放到factory中去
        reader.loadBeanDefinitions(res);

        // 从IOC里面获取Bean
        Student stu = (Student) factory.getBean("student");

        logger.error("id:" + stu.getId() + ";name:" + stu.getName());
    }
}

 

你可能感兴趣的:(spring)