在学习Spring之前先简单的了解一下什么是框架,了解一些概念性的知识。
- 框架(什么框架?)
- 单一应用架构:减少部署节点与成本,简单化的增,删,改,查(ORM)
- 垂直应用架构:访问量增大,用于加速前端页面开发效率的web框架(MVC)
- 分布式服务架构:应用之间交互不可避免,将核心业务抽离出来,作为独立的服务,逐渐形成稳定的服务中心,使前端应用更快速的响应多变市场需求(RPC)。
- 流动计算架构:服务越来越多,容量的评估,小服务资源的消费等问题逐渐显变,需要增加一个调度的中心基于访问压力实时管理集群容量,提高集群利用率(SOA)。
spring是一个轻量级Java开发框架(容器),为了解决企业级应用开发的业务逻辑层和其他各层的耦合问题。提供了一站式轻量开源框架。解决耦合问题关键:依赖注入(IOC,DI)、面向切面编程(AOP)
- Spring IOC (控制反转或DI):IOC 是一种设计思想,在Java中将设计好的对象交给容器控制,而不是显示代码进行对象的创建。 把创建和查找依赖对象的控制权交给IOC容器,由IOC容器注入,组合对象之间的关系,这样该对象与对象之间是松耦合,功能可复用(减少对象的创建和内存消耗),使用整个程序结构可维护度、灵活性、扩展性变高。
- 实现
- 导入jar包--配置XML
- Maven注解+XML
- Springboot+javaconfig
- IOC与DI的关系
- IOC方式是依赖倒置原则的设计思想,而DI是具体的实现
- 优点:1.解耦 2.集中管理 3.功能可复用(减少对象的创建和内存消耗) 4.使得程序和整个体结构可维护性、灵活度、扩展性变高。
- 实现