spring总体概述:
首先spring是一个非常流行的开源框架,它是为了简化企业级应用开发流程而生。
spring易于扩展,且大大加快应用的开发速度,且学习成本低,为众多java程序员所喜爱。
spring特点:
spring拥有2个核心概念,IOC和AOP。
IOC即为控制反转它和DI 依赖注入是同一概念,在spring中实例的创建不由开发者本身关心而交给spring容器。
由spring容器管理实例的生老病死。在spring具体实现中,由配置文件来进行注入,实现了组件的即插即用。
AOP即为面向切面编程,它是OOP面向对象编程的一个补充。如果把OOP比作静态的抽象,那么AOP所拥有的就是动态的抽象。AOP从程序运行的角度考虑程序的结构,把程序运行的业务处理过程分割成单个的切面,让每个步骤之间拥有良好的隔离性。实现代码的松耦合。
spring相关框架延伸:
1. Spring MVC:它是基于Servlt的一个MVC框架,是为了解决web开发。它在继承了spring特性的基础上提供了一种轻度耦合的方式来开发web应用。它基于组件技术。所有应用对象皆为组件,且和spring提供的其它基础结构紧密集成。它可以任意使用各种视图技术,让开发者不单单局限于jsp,并且支持各种请求资源的映射,框架非常易于扩展。
2. Spring boot:因为spring的配置非常复杂,为了简化开发者的使用,基于spring4 的spring boot快速开发整合包 应运而生。它主张的理念,约定优于配置。在牺牲了一小部分的自由度的代价下,获得spring开发的大大简化。它实现了项目的自动配置,降低了项目的搭建复杂度。大部分的spring boot只需要很少的配置代码,从而可以让开发者更加关注与业务逻辑。