美文网首页
Spring 容器

Spring 容器

作者: TheMrBigHead | 来源:发表于2018-09-04 20:52 被阅读0次

Spring 容器

  1. 创建Bean
  2. 管理Bean的生命周期
  3. 组装Bean
  4. 配置Bean

Spring容器是Spring框架的核心

Spring容器采用依赖注入的方式来管理Bean

Spring提供了两大类容器实现。

  1. 实现org.springframework.beans.factory.BeanFactory接口
  2. 实现org.springframework.context.ApplicationContext接口

使用ApplicationContext

常见的几种ApplicationContext

  1. AnnotationConfigApplicationContext
    通过一个或多个基于java的配置类来加载Spring Application Context

  2. ClassPathXmlApplicationContext
    通过一个或多个位于classpath里的xml配置文件来加载Spring Application Context

  3. FileSystemXmlApplicationContext
    通过一个或多个位于文件系统中xml配置文件来加载Spring Application Context

  4. XmlWebApplicationContext
    通过一个或多个位于web应用中的xml配置文件来加载Spring Application Context

使用方法:

ApplicationContext context = new FileSystemXmlApplicationContext("c:/knight.xml");

ApplicationContext context = new
ClassPathXmlApplicationContext("knight.xml");

ApplicationContext context = new AnnotationConfigApplicationContext(
com.springinaction.knights.config.KnightConfig.class);

通过是用context.getBean()来获取具体的Bean

Bean生命周期

image.png
  1. Spring容器来初始化Bean

  2. Spring将value和bean依赖注入到Bean的属性中去

  3. 如果Bean实现了BeanNameAware,Spring会把Bean的id传到setBeanName()方法里去

  4. 如果Bean实现了BeanFactoryAware接口,Spring会调用setBeanFactory()方法,并把自己传到Bean Factory里

  5. 如果Bean实现了ApplicationContextAware接口,Spring会调用setApplicationContext()方法,传入对封闭应用程序的引用

  6. 如果Bean实现了BeanPostProcessor接口,Spring会调用他的postProcessBeforeInitialization()方法

  7. 如果Bean实现了InitializingBean接口,Spring会调用他的afterPropertiesSet()接口。同样的,如果这个Bean在声明的时候有一个init-method属性,那么这个方法就会被调用(主要是在xml配置文件里的)

  8. 如果Bean实现了BeanPostProcessor接口,Spring会调用他的AfterInitialization()方法

  9. 在这个阶段,Bean在容器中,直到容器被销毁

  10. 如果Bean实现了DisposableBean接口,Spring会调用他的destroy()。同样的,在xml中生命的时候可以指定destroy-method

相关文章

  • Spring原理简述

    一、什么是Spring容器? Spring容器,也称Spring Ioc容器或bean容器,是Spring框架的核...

  • Spring 学习笔记(二):Spring 容器以及 bean

    Spring 容器 在 Spring 应用中,应用对象生存于 Spring 容器中,Spring 容器负责创建对象...

  • 2.Spring IoC 容器

    1.Spring IoC 容器 IoC 容器 Spring 容器是 Spring 框架的核心。容器将创建对象,把它...

  • spring原理机制

    1,关于spring容器: Spring的核心是spring容器,该容器负责管理spring中的java组件。 A...

  • Spring入门笔记

    Spring入门使用Spring容器Spring容器使用ApplicationContextApplication...

  • spring 学习02

    Spring 容器 在Spring 应用中,你的应用对象生存在Spring容器中,Spring 容器负责创建对象,...

  • spring详解(一)

    一:spring的基本用法: 1.关于spring容器: spring容器是Spring的核心,该 容器负责管理s...

  • Spring之旅(二):Spring 容器

    Spring容器 Spring容器的作用是啥? Spring中的对象Bean生存在Spirng容器(contain...

  • Spring 体系结构

    1.spring核心容器 核心容器由spring-core,spring-beans,spring-context...

  • [090]web容器启动探讨

    tomcat 如何启动spring容器 我们知道spring通过容器来管理bean,在spring容器启动的时候会...

网友评论

      本文标题:Spring 容器

      本文链接:https://www.haomeiwen.com/subject/qnpnwftx.html