-
Spring给我们提供了核心IOC容器,提供了依赖注入(DI)的核心功能。所以使用Spring首先需要研究核心容器。
-
Spring的核心容器使用步骤
- 导入依赖
org.springframework spring-context 5.3.11 context = aop + beans + context + core + expression + jcl
- 配置配置文件+交给Spring管理的类
- 通过Spring提供的核心容器获得对象。
-
BeanFactory是Spring IOC容器的核心接口。其中所有的IOC容器可以认为都是实现了该接口的具体类。(该接口中提供了最核心的方法getBean)
-
XmlBeanFactory:从XML文件获得IOC容器的bean工厂。也是BeanFactory接口的一个实现类。已过时 不推荐
-
ApplicationContext接口 来自于spring-context包,也是BeanFactory接口的子接口,与WEB容器配置更紧密,一般WEB开发使用ApplicationContext更多。
-
ClassPathXmlApplicationContext: 从类路径中获得资源的ApplicationContext(IOC容器).
-
AnnotationConfigApplicationContext:从注解中获得配置信息的ApplicationContext(IOC容器)
- BeanFactory采用延迟加载,ApplicationContext采用的立即加载方式。延迟加载:当使用到对象才会创建,立即加载:不管是否使用到对象,只要创建IOC容器(ApplicationContext)对象就会创建所有的容器管理的对象
- Spring管理的bean对象【就是注册到IOC容器中的】默认是单例的,可以通过Scope属性进行修改,Scope默认值是:singleton可以改成prototype
-
-
工程名字预告:
-
spring_ioc_demo【小案例】
controller----service----dao-----db
-
spring_ioc_student_xml【基于XML的配置】
-
spring_ioc_student_xml_annotation【基于xml+注解的混合配置】
-
spring_ioc_student_annotation【基于注解的配置】
-
- 导入依赖
3.SpringIOC容器构造对象的方式?schame文件后缀名 xsd XML文档的约束文件有两种: DTD文档: 语法简单 老 后缀:xx.dtd schema文档: 功能强大 新 后缀:xx.xsd
- 无参构造方法
- 带参数构造方法
- 静态工厂
- 实例工厂
- 实现FactoryBean接口的方式
java
public class StudentFactoryBean implements FactoryBean
{ public StudentFactoryBean(){ System.out.println("1111111111"); } public Student getObject() throws Exception { System.out.println("非常复杂的构造对象的过程"); return new Student(); } public Class> getObjectType() { return Student.class; } } - 注解
- setter (前提! 属性有setter方法)
etoak@qq.com et@qq.com abc dfa value value1 - 构造方法
- 注解
-
BeanFactory是Spring提供的IOC容器的核心接口。 getBean是其核心方法,用来创建、管理、获得bean对象。
-
FactoryBean是IOC容器的构造对象的方式之一。 当使用该接口时,我们写一个类实现该接口并且提供getObject方法,就可以像IOC容器中注册bean对象。一般XXFactoryBean就是用来提供 XX对象的,如:StudentFactoryBean就是用来提供Student对象的。



