Spring MVC过时了吗?


Spring MVC过时了吗?

文章插图
题主可能并没有真正理解SpringMVC的精髓 。最早的时候 。我们使用SpringMVC的时候可能是前后端耦合在一起的 。通过Controller的ModelAndView返回一个jsp的页面 。但是现在这种方式基本已经被淘汰 。现在的SpringMVC框架都是以Rest风格编写Controller层 。也就是我们Controller层不再是返回Jsp的页面 。而是返回Json格式的数据 。而前端可以选择任何目前市面上流行的框架 。例如:React、vue、小程序、H5等 。所以 。SpringMVC跟前后端分离没有关系 。如果说你还按照早期的ModeAndView开发 。那你真的落伍了 。
Spring MVC过时了吗?

文章插图
但是 。随着微服务框架SpringBoot的出现以及大规模流行 。SpringMVC的使用程度在降低 。这主要是SpringMVC的配置太复杂 。SpringMVC中有大量的xml文件需要编写 。而且编写起来很复杂 。当然这些xml文件编写是基本一次性的 。只要第一次编写完成 。后续的业务开发基本不用再改变 。而SpringBoot基本完全抛弃了xml文件的配置 。所有的配置都是框架本身集成好的 。只需要按照特定的约定去做就好 。当然在集成有些中间件的时候 。我们只需要编写相应的Java代码即可 。所以 。SpringBoot的使用越来越广泛 。企业的很多新项目都是基于SpringBoot去开发 。
Spring MVC过时了吗?

文章插图
不管是SpringMVC还是SpringBoot 。只要精通一种框架 。剩下的框架自然而然的就懂了 。框架本身就是为了减少程序员的工作而设计的 。无需过多的纠结过不过时的问题 。拿来即用是我们最终的目标 。
其他观点:
本来不想回答这个答案显而易见的问题的 。但是看了回答 。我真是醉了 。还是出来说几句 。
先回答这个问题:
SpringMVC没有过时
【Spring MVC过时了吗?】再谈几个其他人理解有误的回答:
1.你使用SpringBoot框架 。就没有使用SpringMVC吗?
什么是SpringBoot 。它诞生的原因是什么 。其他答主有想过吗?
SpringBoot框架的诞生 。只不过是Spring体系的快速发展 。再Spring中使用部分功能 。如Mybatis 。就要做很多配置 。有些配置 。一成不变 。就是换个host啥的 。SpringBoot便是解决这一痛点而生的 。
同样 。对SpringMVC也是这样的 。你使用SpringBoot 。只不过是为了更加方便的使用SpringMVC而已 。并不是不用SpringMVC了 。搞清楚这点再好好说话行吗
2.算了吐槽不下去 。上面也说得很清楚了 。煞笔 。
其他观点:
这是一个非常好的问题 。也是很多Java开发人员比较关心的问题之一 。作为一名IT从业者 。同时也是一名教育工作者 。我来回答一下 。
首先 。当前Spring MVC依然有非常广泛的应用 。由于Spring MVC自身的生体体系比较完善 。所以采用Spring MVC也会降低项目的开发风险 。但是 。从软件开发大的发展趋势来看 。Spring MVC在应用端的发展空间会逐渐缩小 。
Spring MVC过时了吗?

文章插图
在云计算时代 。大量传统的开发任务 。尤其是应用端的开发任务将逐渐从IaaS模式向PaaS模式转变 。这个过程对于软件开发的技术选型会产生非常明显的影响 。从Spring MVC的技术体系结构来看 。Spring MVC是比较典型的IaaS模式 。业务逻辑和功能实现都由开发人员来完成 。这种开发方式在云计算时代将产生较大的变革 。
Spring MVC过时了吗?

文章插图
虽然采用Spring MVC依然可以实现各种传统开发任务 。但是在云计算时代 。随着软件产品的迭代速度进一步提升 。传统的Spring MVC就显得有点“重了” 。这将导致项目开发周期延长 。同时也不太允许团队小型化的开发模式 。从这一点来看 。Spring MVC未来的应用空间会逐渐被压缩 。更轻量级的开发框架将受到程序员的青睐 。实际上 。当前很多程序员更愿意采用Spring Boot 。其中一个比较明显的原因就是Spring Boot更轻 。更适合当前“微服务”的开发模式 。
Spring MVC过时了吗?

文章插图
云计算的发展趋势是全栈云和智能云 。在这两个发展趋势的推动下 。未来在应用端的开发将逐渐向“资源接口”的方式发展 。而所谓的资源接口则是把大量的资源(数据、算力)接口化 。程序员只需要根据项目的需要进行调用就可以了 。从这个角度来看 。未来Spring框架将进一步轻量化 。而Spring MVC则很有可能会被进一步封装和集成 。

推荐阅读