spring 首要分析

 

Sophisticated applications often require services such as transaction support, security, and distributed computing.

复杂的应用程序网网需要事务支持、安全支持、分布式计算、

  1. 事务支持
  2. 安全
  3. 分布式:REST、JMS等

spring的核心:

1.DI:Dependency Injection

2.AOP:Aspect Oriented Programming

3.ApplicationContext:用于加载bean和装配它们;常用的ApplicationContext有

  • ClassPathXmlApplicationContext
  • FileSystemXmlApplicationContext
  • XmlWebApplicationContext

关于容器:Spring提供的容器可以分为两种不同种类:

  • BeanFactory:最简单的容器,提供了对DI的支持
  • ApplicationContext:建立在BeanFactory之上,提供了应用程序框架服务,如:解析文本变量、事件等。 

Spring中bean的生命周期:


spring 首要分析_第1张图片

 

  • 1.spring实例化bean对象
  • 2.注入属性和对象引用
  • 3.如果实现了BeanNameAware接口,则将bean的ID传递给setBeanName()方法
  • 4.如果实现了BeanFactoryAware接口,spring将bean factory传递给setBeanFactory()方法
  • 5.如果实现了ApplicationContextAware接口,spring将applicationContext传递给setApplicationContext()方法
  • 6.如果实现了BeanPostProcessor接口,则将调用postProcessBeforeInitialization()方法
  • 7.如果实现了InitializingBean接口,则将调用afterPropertiesSet()方法
  • 8.如果在xml配置文件中配置了init-method,则将被调用
  • 9.如果实现了BeanPostProcessor接口,则将调用postProcessAfterInitialization()。:这里和第6步中的接口相同,只是一个接口中的两个方法在不同时期调用
  • 至此,bean对象已经做好了所有准备,可以被应用程序使用。

 

你可能感兴趣的:(spring)