1、Spring的使用几大好处
- 依赖注入(DI)/控制反转(IOC),让相互协作的组件保持松耦合,对象之间能够解耦
- 面向切面(AOP)编程,允许你把遍布应用各处的功能抽离出来形成可重用的组件,使用各种功能层包裹核心业务层,将安全、事务、日志关注点与核心业务逻辑分离开。
- 使用模板消除样板式的代码,例如JDBC的创建连接、创建查询对象语句、到最后的关闭连接,和一些异常处理
2、容器,Spring的核心
- Spring容器使用依赖注入管理构成应用的组件,并创建相互协作的组件之间的关联
- Spring自带的几种容器的实现:
- (1)、Bean工厂:最简单的容器,提供基本的DI支持
- (2)、应用上下午:基于BeanFactory之上构建,并提供面向应用的服务。使用更多
- 应用上下午的几种类型:
- (1)、ClassPathXmlApplicationContex:从路径下的一个或多个XML配置文件中加载上下文定义,把应用上下文的定义文件作为类资源
- (2)、FileSystemXmlApplicationContex:从文件系统下的一个或多个XML配置文件中加载上下文定义
- (3)、XmlWebApplicationContex:从Web应用下的一个或多个XML配置文件中加载上下文定义
- (4)、AnnotationConfigApplicationContex:从一个或多个基于java的配置类中加载Spring应用上下文
- (5)、AnnotationConfigWebApplicationContex:从一个或多个基于java的配置类中加载Spring Web应用上下文
- 通过Spring应用上下文的引用,可以调用应用上下文的getBean方式从Spring容器中获取Bean
3、Spring的Bean的生命周期
- Spring对Bean进行实例化
- Spring将值和Bean的引用注入进Bean对应的属性中
- 根据Bean是否实现某些接口,调用对应的方法
- Bran准备就绪可以被使用,一直驻留在应用上下文中,直到该应用上下文被销毁