JAVA后台开发,用spring boot好,还是继续用spring MVC好?


您好 。我从事Java开发8年+ 。目前正使用SpringBoot进行服务端微服务开发 。毋庸置疑 。java后台开发在spring生态下 。用SpringBoot显然比SpringMVC好 。
实际上是不能拿SpringMVC和SpringBoot去做比较的 。SpringBoot和SpringMVC是包含的关系 。SpringBoot下面有很多模块 。譬如下图这些:

JAVA后台开发,用spring boot好,还是继续用spring MVC好?

文章插图
还有这些:
JAVA后台开发,用spring boot好,还是继续用spring MVC好?

文章插图
JAVA后台开发,用spring boot好,还是继续用spring MVC好?

文章插图
所以不要觉得SpringBoot就仅仅是SpringMVC 。SpringMVC在SpringBoot中充其量就是一个spring-boot-starter-web模块而已 。
所以题主应该考虑的是web层我到底是用SpringMVC还是用SpringBoot中的spring-boot-starter-web模块呢?
SpringMVC
Spring MVC提供了一种轻度耦合的方式来开发web应用 。它是Spring的一个模块 。是一个web框架 。核心就是Dispatcher Servlet, ModelAndView 和 View Resolver这三大模块 。让大家开发web应用变得很容易 。目前无论是直接用SpringMVC还是用SpringBoot中的web模块 。其实都是用的SpringMVC 。只不过SpringBoot无需配置 。添加一些指定的注解即可 。
JAVA后台开发,用spring boot好,还是继续用spring MVC好?

文章插图
SpringBoot
Spring Boot实现了自动配置 。降低了项目搭建那些繁琐的步骤和配置 。这些东西往往容易出错 。所以SpringBoot把这些都给整合起来了 。可以把它当做一个各种框架、中间件甚至工具的整合包 。开箱即用 。一个依赖 。几个注解即可开始开发 。
一定要认清的是SpringBoot不是解决Spring的方案 。只是简化了Spring框架生态下的整合步骤和效率 。
JAVA后台开发,用spring boot好,还是继续用spring MVC好?

文章插图
总结
现在大多数公司已经直接使用SpringBoot去做后台开发了 。除了一些老旧系统 。新的系统基本上都会采用SpringBoot去整合开发 。SpringCloud、微服务等对SpringBoot的支持都比较好 。同样在招聘需求里 。SpringBoot也是必须会的一个框架 。
综上 。个人建议采用SpringBoot替代SpringMVC进行开发 。
其他观点:
【JAVA后台开发,用spring boot好,还是继续用spring MVC好?】如果不上spring cloud的话 。那么:
你这个单体系统如果比较庞大 。用springMVC;
如果比较小 。则使用boot 。
如果上cloud 。那么不用说了 。
boot缺少xml配置 。开发复杂系统会很麻烦 。Java代码里各种配置项 。比较乱 。。只是用@Bean替换了xml-bean 。。而且boot会有很多auto configuration 。如果你不熟 。会有很多不明白的地方 。。。
其他观点:
Java后台开发现在当然是采用spring boot好
spring boot是为了简化spring、spring mvc框架繁琐的配置而诞生的 。它整合了spring mvc、spring security等spring全家桶 。还包括redis、neo4j、mysql、elasticsearch、couchbase等常用的中间件 。
JAVA后台开发,用spring boot好,还是继续用spring MVC好?

文章插图
Java
传统的spring mvc项目需要自己配置xml文件 。还需要单独配置tomcat服务器 。xml的配置非常繁琐 。spring boot开箱即用、约定优于配置 。你创建一个spring boot项目 。不需要配置就可以运行服务 。一些配置已经有默认值了 。如果你想修改可以自己定义 。这就是spring boot的好处 。可以使用默认值 。想自己定义也可以 。
JAVA后台开发,用spring boot好,还是继续用spring MVC好?

文章插图
spring boot
spring boot项目内嵌tomcat、undertow、jetty等容器 。不需要单独的服务器 。项目可以直接打包成jar包 。运行、部署都很方便 。
现在比较火的微服务spring cloud也是基于spring boot项目的 。spring boot项目方便整合网关、注册中心等 。传统的spring mvc适合单体应用 。不适合微服务 。
JAVA后台开发,用spring boot好,还是继续用spring MVC好?

文章插图
spring cloud架构
所以Java后台开发采用spring boot比较好 。如果有spring mvc的经验可以很快掌握spring boot的使用 。spring boot要比传统的spring mvc方式要简单很多 。spring boot的出现是为了简化spring项目的配置 。在spring boot项目中同样可以使用spring mvc 。只不过是spring boot整合了spring mvc使用更简单了 。
JAVA后台开发,用spring boot好,还是继续用spring MVC好?

文章插图
spring boot
新项目一定要放弃传统的spring mvc方式 。采用spring boot 。
黑客之家头条号分享黑客技术 。物联网、GO、Python、Kotlin、Android、Java编程知识 。科技资讯等喜欢的朋友可以关注我的头条号!

推荐阅读