springboot与springmvc的区别是什么?

2024-10-29 08:03:10
推荐回答(2个)
回答1:

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

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

3、说得更简便一些Spring 最初利用“工厂模式”(DI)和“代理模式”(AOP)解耦应用组件大家觉得挺好用于是按照这种模式搞了一个 MVC框架(一些用Spring 解耦的组件)用开发 web 应用( SpringMVC )。

4、然后有发现每次开发都写很多样板代码为了简化工作流程于是开发出了一些“懒人整合包”(starter)这套就是 Spring Boot。

5、Spring MVC的功能

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

7、Spring MVC是Spring的一个模块式一个web框架通过Dispatcher Servlet, ModelAndView 和 View Resolver,开发web应用变得很容易。

8、解决的问题领域是网站应用程序或者服务开发——URL路由、Session、模板引擎、静态Web资源等等。

1、众所周知Spring框架需要进行大量的配置Spring Boot引入自动配置的概念让项目设置变得很容易Spring Boot本身并不提供Spring框架的核心特性以及扩展功能只是用于快速、敏捷地开发新一代基于Spring框架的应用程序。

2、也就是说它并不是用来替代Spring的解决方案而是和Spring框架紧密结合用于提升Spring开发者体验的工具。

4、同时它集成了大量常用的第三方库配置(例如Jackson, JDBC, Mongo, Redis, Mail等等),Spring Boot应用中这些第三方库几乎可以零配置的开箱即用(out-of-the-box)大部分的Spring Boot应用都只需要非常少量的配置代码开发者能够更加专注于业务逻辑。

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

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

回答2:

大概说一下:
Spring 是一个“引擎”
Spring MVC 是基于 Spring 的一个 MVC 框架
Spring Boot 是基于 Spring4 的条件注册的一套快速开发整合包

Spring 最初利用“工厂模式”( DI )和“代理模式”( AOP )解耦应用组件。大家觉得挺好用,于是按照这种模式搞了一个 MVC 框架(一些用 Spring 解耦的组件),用开发 web 应用( SpringMVC )。然后有发现每次开发都要搞很多依赖,写很多样板代码很麻烦,于是搞了一些懒人整合包( starter ),这套就是 Spring Boot 。
spring 框架有超多的延伸产品例如 boot security jpa etc... 但它的基础就是 spring 的 ioc 和 aop ioc 提供了依赖注入的容器 aop 解决了面向横切面的编程 然后在此两者的基础上实现了其他延伸产品的高级功能 Spring MVC 呢是基于 Servlet 的一个 MVC 框架 主要解决 WEB 开发的问题 因为 Spring 的配置太复杂了 各种 XML JavaConfig hin 麻烦 于是懒人改变世界推出了 Spring boot 约定优于配置 简化了 spring 的配置流程 简单谈下自己的理解 也没有学很久 若有错误请指正