• 那是从何处传来的钟声呢?偶尔听到那钟声,平添一份喜悦与向往之情。

Spring Boot

后端 Nanait 11个月前 (10-23) 118次浏览 未收录 0个评论 扫描二维码
文章目录[隐藏]

什么是Spring Boot

Spring Boot 设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而是开发人员不再需要定义样板化的配置。

使用Spring Boot 的好处

其实就是简单、快速、方便。平时如果我们要搭建一个Spring Web 项目的时候要怎么做呢?

  1. 配置 web.xml,加载 spring 和 spring mvc
  2. 配置数据库连接,配置 spring 事务
  3. 配置加载配置文件的读取,开启注解
  4. 配置日志文件
  5. ……
  6. 配置完成后部署 tomcat 调试
  7. ……

现在非常流行微服务,如果我这个项目仅仅只是需要发送一个邮件,如果我的项目仅仅是生产一个积分,我都需要这样折腾一遍。

但如果是使用Spring Boot 呢?

很简单,我只需要非常少的几个配置就可以迅速方便的搭建起来一套 web 项目或者构建一个微服务。

Spring Boot 和 Spring MVC 的区别是什么

Spring 框架就像是一个家族,有众多衍生产品。例如:Boot、security、jpa 等等。但他们的基础都是 Spring 的 ioc 和 aop,ioc 提供了 依赖注入的容器,aop 解决了面向切面编程。然后在此两者的基础上实现了其他衍生产品的高级功能。

Spring MVC 是基于 Servlet 的一个 MVC 框架,主要解决 WEB 开发的问题,因为 Spring 的配置非常复杂,各种 XML、JavaConfig 处理起来比较繁琐。于是为了简化开发者的使用,从而创造行的退出了 Spring Boot,约定优于配置,简化了 Spring 的配置流程。

说的简单一些:Spring 最初利用“工厂模式”和“代理模式”解耦应用组件。大家觉得挺好用的,于是按照这种模式搞了一个 MVC 框架,用开发 WEB 应用的 Spring MVC。然后发现每次都写很多的样板代码,为了简化工作流程,于是就开发出一些“懒人开发包”,就是这套 Spring Boot。

Spring MVC 的功能

Spring MVC 提供了一种轻度耦合的方式来开发 WEB 应用。

Spring MVC 是 Spring 的一个模块,是一个 web 框架。通过 Dispatcher Servlet,ModelAndView 和 ViewResolver,开发 web 应用变得很容易。解决的问题领域是网站应用或者服务开发——URL 路由、Session、模板引擎、静态 Web 资源等等。

Spring Boot 的功能

SpringBoot实现了自动配置,降低了项目搭建的复杂度。

总所周知 Spring 框架需要进行大量的配置,SpringBoot引入了自动配置的概念,让项目设置变得很容易。SpringBoot本身不提供 Spring 框架的核心特性以及扩展功能,只是快速、敏捷地开发新一代基于 Spring 框架的应用程序。也就是说,他并不是用来代替 Spring 的解决方案,而是和 Spring 框架紧密结合用于提升 Spring 开发者体验的工具。同事它集成了大量常用的第三方库(例如 Jackson,JDBC,MongoDB,Redis 等等),SpringBoot应用中这些第三方库几乎可以零配置的开箱即用(out-of-the-box),大部分的SpringBoot应用斗志徐涛非常少量的配置代码,开发者能够更加专注于业务逻辑。

SpringBoot只是承载者,辅助你简化项目搭建过程的。如果承载的是 WEB 项目,使用SpringMVC作为 MVC 框架爱,那么工作流程和你上面描述的是完全一样的,因为这部分工作是SpringMVC做的而不是 SpringBoot。

对使用者来说,换用 SpringBoot 以后,项目初始化方法变了,配置文件也变了,另外就是不需要单独安装 tomcat 这类的容器服务器了,maven 打出 jar 包直接跑起来就是个网站,但你最核心的业务逻辑实现与业务流程实现没有任何变化。

所以,用最简练的语言概括就是:

Spring 是一个“引擎”;

SpringMVC是基于 Spring 的一个 MVC 框架;

SpringBoot 是基于 Spring4 的条件注册的一套快速开发整合包。


何处钟 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:Spring Boot
喜欢 (0)
[15211539367@163.com]
分享 (0)

您必须 登录 才能发表评论!