spring IOC容器学习笔记(一)
(备注本文章只是为了记录自己看书的笔记,为了以后遗忘的时候能快速的复习之用)
IOC容器主要是用来对bean进行管理,BeanFactory是它的实际代表者。
BeanFactory 和 ApplicationContext,前者主要是用于bean的初始化和配置对象之间依赖关系,而后者是前者的扩展,提供了AOP,国际化处理,事件传递和企业级应用.前者所具备的行为后者也具备.
Bean就是spring IOC容器管理的对象。
XMLBeanFactory是BeanFactory的实现,它是以XML的形式描述组成的对象的应用,和对象之间的依赖关系,它通过获取元数据来完成整个系统配置,spring IOC容器包括一个或者多个Bean,在XML顶层元素<beans></beans>中配置<bean></bean>元素标签,Bean的定义通常包括DAO对象,服务层对象,连接池,SessionFactory等。
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=""/>
<bean id="" class=""/>
</beans>
当有多个配置XML配置文件时可以有两种方式,第一种是在 <beans>元素标签内使用<import resource="配置文件的相对路径"/> 第二种:ApplicationContext context=new ClassPathXmlApplicationContext(new String[]{"文件名","文件名"})采用的是文件名数组的形式加载实例配置文件。
spring IOC容器管理的一个或多个Bean,在容器内部是被BeanDefinition定义,定义包括如下信息:
class 实例化Bean,类的具体位置包括包名
name 为Bean指定别名
scope Bean的作用域的范围
constructor argument 注入依赖的构造参数
autowiring mode自动装配协作者
dependency checking mode 依赖检查
lay-initialization mode 延迟初始化Bean
initialization-method 初始化回调
destruction-method 析构回调