一 . 概述
在spring的发展过程之中,出现了三种配置方式.
[1]xml形式
[2]注解形式
[3]javaconfig形式
也就是说我们后面每一个问题的说明都应该分成三种.但是可虑到我们学习spring的核心是理解这个原理,
现在我们现在只用xml形式的方式进行配置.后面再详细说明spring的其它配置方式.
二 . 简单使用spring
<?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.xsd"> <bean id="date" class="java.util.Date"></bean> </beans>
我们在类路径下配置spring.xml文件.
测试代码:
ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext("spring.xml"); Date date = (Date) context.getBean("date"); System.out.println(date);
在测试代码之中,我们创建了一个IOC容器的实现类,从类路径下加载了spring的配置文件.
然后我们从IOC容器之中获取了一个Bean.
三 . IOC容器
上面我们演示了spring的简单使用,其中涉及到了IOC容器的概念.在这里需要说一说IOC容器到底是什么.
public interface BeanFactory
在spring之中将IOC容器的顶层根接口定义为BeanFactory,含义是创建对象的工厂.
其核心就是创建Bean,然后用户就从IOC容器中获取自己想要的各种Bean.
那么,spring容器如何知道用户需要什么样的Bean呢?
配置文件定义了用户需要的Bean的信息,表现形式会有多种,如xml,注解,javaconfig等,但是功能都是一致的,
我们可以理解spring的IOC容器的大体用法:
[1]收集用户的配置信息--元数据
[2]spring转换将配置信息转换为内部的数据结构---BeanDefinition.
[3]spring根据2的信息创建出Bean.
[4]用户使用.