什么是spring?
Spring是一个轻量级Java开发框架,目的是为了解决企业级应用开发的业务逻辑层和其他各层的耦合问题。为开发Java应用程序提供全面的基础架构支持,因此Java开发者可以专注于应用程序的开发。
Spring最根本的使命是解决企业级应用开发的复杂性,即简化Java开发。
为企业级开发提供给了丰富的功能,但是这些功能的底层都依赖于它的两个核心特性,也就是依赖注入(dependency injection,DI)和面向切面编程(aspect-oriented programming,AOP)。
Spring框架的设计目标,设计理念,和核心是什么
Spring设计目标:Spring为开发者提供一个一站式轻量级应用开发平台;
Spring设计理念:在JavaEE开发中,支持POJO和JavaBean开发方式,使应用面向接口开发,充分支持OO(面向对象)设计方法;Spring通过IoC容器实现对象耦合关系的管理,并实现依赖反转,将对象之间的依赖关系交给IoC容器,实现解耦;
Spring框架的核心:IoC容器和AOP模块。通过IoC容器管理POJO对象以及他们之间的耦合关系;通过AOP以动态非侵入的方式增强服务。
IoC让相互协作的组件保持松散的耦合,而AOP编程允许你把遍布于应用各层的功能分离出来形成可重用的功能组件。
它包含一些很好的功能,如依赖注入和开箱即用的模块,如:
- Spring JDBC
- Spring MVC
- Spring Security
- Spring AOP
- Spring ORM
- Spring Test
spring boot?
Spring Boot基本上是Spring框架的扩展,它消除了设置Spring应用程序所需的复杂例行配置。
它的目标和Spring的目标是一致的,为更快,更高效的开发生态系统铺平了道路。
以下是Spring Boot中的一些功能:
- 通过starter这一个依赖,以简化构建和复杂的应用程序配置
- 可以直接main函数启动,嵌入式web服务器,避免了应用程序部署的复杂性
- Metrics度量,Helth check健康检查和外部化配置
- 自动化配置Spring功能 - 尽可能的
什么是Spring IOC 容器?
控制反转即IoC,是一种设计思想,将原本手动创建对象的控制权,交由Spring ioc容器来管理,ioc容器实际上就是一个Map(key,value),Map中存放着的是各种对象。Spring IOC 容器作用是什么?
Spring IOC 负责创建对象,管理对象(通过依赖注入(DI),装配对象,配置对象,并且管理这些对象的整个生命周期。Spring IoC 的实现机制
Spring 中的 IoC 的实现原理就是工厂模式加反射机制。
