1.1 spring相关基础概念



1.Spring、SpringMVC、SpringBoot、SpringCloud关系

刚开始接触框架时,对Spring、SpringMVC、SpringBoot、SpringCloud之间的关系都会比较模糊,经常会混淆或者不明所以,我们先来将其做一个简单介绍,方便大家了解对比。

Spring是一个轻量级的控制反转(Ioc)面向面切编程(AOP)容器的开源框架。降低了开发的难度、低入侵、解耦合、声明事务管理方便集成其他框架、容器。

而SpringMVC是Spring中包含的其中一个模块,其遵循MVC设计模式最终实现前后端项目的松耦合而建立的。

由于Spring构建项目时配置设置的复杂性,所以创建了spring boot ,其是为 spring 服务的,是用来简化新 spring 应用的初始搭建以及开发过程的。

spring cloud 是一系列框架的有序集合。它利用 spring boot 的开发便利性巧妙地简化了分布式系统基础设施的开发,如服务发现注册、配置中心、消息总线、负载均衡、断路器、数据监控等,都可以用 spring boot 的开发风格做到一键启动和部署。

2.spring概念

spring框架是由一名悉尼大学的音乐学博士Rod Johnson开发的,其于2002年,首次推出了Spring框架雏形interface21框架。2004年3月24日,Spring框架以interface21框架为基础,经过重新设计,发布了1.0正式版。其开发理念是为了将现有技术整合,使其更加实用,所以spring本身就是一个大杂烩,整合了当时已有的一些框架技术。

spring是一个开源,免费的轻量级,非入侵式框架或者说容器,核心是控制反转IOC与面向切面开发AOP。

核心的IOC容器技术,管理依赖的对象,不需要程序员创建和管理依赖的对象,从而实现层与层之间的解耦。

核心的AOP技术:方便我们将一些非核心业务逻辑抽离,从而实现核心业务和非核心业务的解耦。

3.Spring Boot概念

Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。Spring Boot 现在已经成为Java 开发领域的一颗璀璨明珠,它本身是包容万象的,可以跟各种技术集成。成为SpringBoot全家桶。
在这里插入图片描述

Springboot最重要的就是约定大于配置,为了简化Spring配置的快速开发整合包,主要实现了三大功能:

  1. 通过starter和依赖管理解决依赖问题(通过maven子父工程的方式)
  2. 通过自动配置spring,解决spring配置复杂问题
  3. 通过内嵌web容器,由应用启动tomcat,而不是tomcat启动应用,来解决部署运行问题。
  4. 提供生产就绪型功能,如指标,健康检查和外部配置

4.SpringMVC概念

SpringMVC是Spring的一个后续产品,可以将其理解为Spring的一个子项目,由Spring团队的产品,遵循MVC设计模式最终实现前后端项目的松耦合而建立的。

MVC设计模式中,M是Model是模型层,用来封装数据,V是View是视图层,用来展示数据,C是Controller是控制层, 接受浏览器发来的请求,并做出数据的响应,所以SpringMVC框架是用来接受请求 + 做出响应的。

因为是Spring家族原生产品,所以与IOC容器等基础设施可以无缝对接,并且其基于原生的servlet,封装了功能强大的前端控制器DispatcherServlet,可以对请求和响应进行统一处理。使用SpringMVC进行开发代码整洁,开发效率高,性能也十分优异。

5.SpringCloud概念

springCloud是基于SpringBoot的一整套实现微服务的框架。其提供了微服务开发所需的配置管理、服务发现、断路器、智能路由、微代理、控制总线、全局锁、决策竞选、分布式会话和集群状态管理等组件。五大组件分别为:

  1. Eureka实现服务治理;
  2. Ribbon主要提供客户侧的软件负载均衡算法;
  3. Hystrix断路器,保护系统,控制故障范围;
  4. Zuul,api网关,路由,负载均衡等多种作用;
  5. Config配置管理。

6.后续计划

后续我们会先简单研究SpringMVC的使用,进行Spring开发的具体流程及常用注解使用的简单了解后,依靠VUE框架进行一个SpringBoot项目的基础功能开发。

上面的实战案例完成后,我们会基于若依权限管理子系统,进行SpringCloud项目的流程开发。

在开发过程中,我们会穿插介绍中间使用到的各种中间件,包含spring等框架内嵌的一些中间件的使用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值