spring源码学习-1

ioc(BeanFactory)

注解

@Configuration 
	注释的类 类似于于一个 xml 配置文件的存在(针对于 ClassXmlPathApplicationContext 来说)。
	可用于定义配置类(相当于替换xml文件)
  • 所有的bean都是由BeanFactory创建的

  • applicationContext是由beanFactory派生而来的,是在beanFactory的基础上,扩展开来的

  • beanFactory是最原始的factory

    • 为什么演生

      • beanFactory不支持spring的许多插件,如AOP、Web应用

      • 就此演生applicationContext

  • 由于applicationContext是由beanFactory演生而来,因此集成了beanFactory的所有功能

ApplicationContext context = new ClassPathXmlApplicationContext("配置的xml文件")
    之后通过
    getBean(String beanName)
    可以获取到bean的实例
bean
  • bean是由Spring容器初始化、装配以及管理的对象
bean的xml配置
<?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-2.5.xsd">

  <bean id="..." class="...">
    <!-- collaborators and configuration for this bean go here -->
  </bean>

  <bean id="..." class="...">
    <!-- collaborators and configuration for this bean go here -->
  </bean>

  <!-- more bean definitions go here -->

</beans>

理解

  • 和需要new对象一样,ioc容器也需要一个“驱动“

    •  ApplicationContext context = new ClassPathXmlApplicationContext(
               new String[] {"services.xml", "daos.xml"});
      
  • 可以创建多个配置文件,然后在导入到一个applicationContext的总的配置文件li

    • 使用的标签是import标签
上一篇:mybatis mapper代理开发


下一篇:【工具类】手动获取被spring管理的bean对象