springmvc与springboot的优劣比较

最近一个项目中,我用的springmvc开发的。
但是,项目是交由其他同事,以后也是交给客户自己部署。
发现一个比较麻烦的问题。

首先,Tomcat我需要配置好,配置端口文件,配置指向外部war包文件。
重启Tomcat的时候,还有各种缓存清理。
这样导致部署起来十分麻烦。

其次,springmvc本身,有很多的xml文件要配置,比如mvc部分, 比如config部分。
配置好了,在web.xml里,也要做好配置工作。
相对来讲,很麻烦了。

除了以上两点,还有:
SpringMVC的优点:
(1)使用简单,学习成本低。
(2)很容易就可以写出性能优秀的程序.
(3)灵活性强,Spring MVC的框架易扩展。
SpringMVC的缺点:
(1)Spring与MVC 的Servlet API 耦合,难以脱离容器独立运行。
(2)太过于细分,开发效率低。
(3)过度追求完美,有过度设计的危险解决的问题领域是:网站应用程序或者服务开发——URL路由、Session、模板引擎、静态Web资源等等。

Spring Boot的核心功能:
(1)独立运行的Spring项目
Spring Boot可以以jar包的形式进行独立的运行,使用:java -jar xx.jar 就可以成功的运行项目,或者在应用项目的主程序中运行main函数即可;
(2)内嵌的Servlet容器
内嵌容器,使得我们可以执行运行项目的主程序main函数,并让项目的快速运行
(3)提供starter简化Manen配置
Spring Boot提供了一系列的starter pom用来简化我们的Maven依赖
(4)自动配置Spring
Spring Boot会根据我们项目中类路径的jar包/类,为jar包的类进行自动配置Bean,这样一来就大大的简化了我们的配置。当然,这只是Spring考虑到的大多数的使用场景,在一些特殊情况,我们还需要自定义自动配置;
(5)应用监控
Spring Boot提供了基于http、ssh、telnet对运行时的项目进行监控;

springboot 要解决的问题:
1.如何精简配置;如何让编码、部署、监控变简单;
2.如何方便的让spring生态圈和其他工具链整合;

优点:
1.对新手来说,无需任何门槛,只要懂Maven[的新手]会看文档就能亦步亦趋的开始一个新项目;
2.对高手来说,改配置也是分分钟的事。另外fat jar的打包方式让部署方式变得优雅。
缺点:
1.就是简单的背后蕴藏了巨大的学习曲线。入门容易,但是如果没有完整学习spring的体系,碰到问题就一脸懵逼。如果没有一定的经验,根本就不知道springboot自动做了什么。

SpingMVC与SpringBoot的联系与区别:
联系:
Spring 最初利用“工厂模式”( DI )和“代理模式”( AOP )解耦应用组件。按照这种模式搞了一个 MVC 框架(一些用 Spring 解耦的组件),用开发 web 应用( SpringMVC )。后来发现每次开发都要搞很多依赖,写很多样板代码,使代码臃肿而麻烦,于是聪明的前人整理了一些懒人整合包( starter ),这套就是 Spring Boot 。
区别:
Spring MVC 是基于 Servlet 的一个 MVC框架 主要解决 WEB 开发的问题 但关于Spring 的配置比较 ;
而Spring boot 的原则是:约定优于配置 ,可以极大地简化了 spring 的配置流程。

在这里插入图片描述

基于以上原因,我觉得学习springboot是势在必行了。
另外,现在流行前后端分离,分布式部署,集群化服务,springboot已经成为不可不学的东西了。

  • 1
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值