1、不用Spring Boot的痛苦是什么?

(1)各种技术整合在一起,版本混乱,大量依赖自己去找,依赖冲突

(2)基于xml格式的配置文件,对各种技术框架进行大量的繁琐配置,mvc-servlet.xml,applicationContext.xml,mybatis-config.xml,web.xml

(3)web系统跑起来测一下,需要与tomcat等web容器整合起来才能测试

(4)单元测试的时候需要自己去选择和导入需要的各种测试组件的依赖,junit,hamcrest,mockito,很多组件

(5)部署打包的时候需要自己去配置打包插件

(6)部署应用上线之后,没法去对线上的应用,包括jvm堆栈等方方面面进行监控,没有方便的办法去看到这些东西

传统的以spring为核心的web系统开发,从启动项目、开发、测试、部署以及监控,都很麻烦,有大量需要手工做的事情

2、用了Spring Boot以后的好处是什么?

spring社区意识到了这些问题,开发人员一定是最讨厌繁琐的,希望的都是用技术提高工作效率。因此推出了spring boot框架,作为开发spring项目的一个脚手架,脚手架,类似于一个封装在各种技术之上的一个基础框架,基础模板。脚手架帮助我们快速整合需要使用的技术框架,快速开发、测试以及部署和监控,节约我们的成本。如果没有spring boot,很多公司,特别是一些大公司,会将spring mvc 、mbatis、spring这些框架再度根据自己公司的开发经验、规范和实际情况,再度封装,进一步简化每个新项目使用框架的一个成本

Spring Boot是spring官方社区推出的,设计思想,架构思想,是更好的,更加优雅的

(1)spring boot负责统一各个依赖的版本,保证各种技术的版本之间兼容,自动引入需要的各种依赖。spring boot 1.5.9,在这个版本基础之上,你引入的spring、mybatis、spring mvc、redis、zookeeper、kafka、mongodb,等等各种技术,在spring boot1.5.9这个大版本的基础之上,其实所有技术的版本都是互相兼容的,省去了我们自己去寻找版本整合,解决不兼容问题的一个过程

(2)所有技术整合进来之后,不需要xml配置,spring boot全部是大量基于按照约定的自动配置,自动生成那些技术相关的一些bean,注入spring容器供使用,基于注解进行少量注释,基于application.properties,少量的配置即可

(3)spring boot支持内嵌的web容器,上来直接启动一个main方法就可以启动一个内嵌的tomcat web容器+web程序,快速上手测试,http://localhost:8080/

(4)一键引入需要的所有单元测试组件依赖,所有测试组件的版本兼容,支持controller、service、dao各种测试

(5)默认声明一个插件,自己给你把插件配置好了,支持打包成可以执行的jar包或者是war包

(6)系统上线之后,默认支持大量的线上应用的监控metrics,可以看到线上应用的jvm堆栈,等等信息

不用Spring Boot的痛苦是什么?用了Spring Boot以后的好处是什么?的更多相关文章

  1. step6----->往工程中添加spring boot项目------->修改pom.xml使得我的project是基于spring boot的,而非直接基于spring framework

    文章内容概述: spring项目组其实有多个projects,如spring IO platform用于管理external dependencies的版本,通过定义BOM(bill of mater ...

  2. Spring boot学习1 构建微服务:Spring boot 入门篇

    Spring boot学习1 构建微服务:Spring boot 入门篇 Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程.该框 ...

  3. Spring Boot(十六):使用Jenkins部署Spring Boot

    Spring Boot(十六):使用Jenkins部署Spring Boot jenkins是devops神器,介绍如何安装和使用jenkins部署Spring Boot项目 jenkins搭建 部署 ...

  4. (36)Spring Boot Cache理论篇【从零开始学Spring Boot】

    Spring Boot Cache理论篇 在上一篇中我们介绍了Spring Boot集成Redis的实战例子,里面使用到了Spring Cache,那么什么是Spring Cache呢,本章将会做一个 ...

  5. 57. Spring 自定义properties升级篇【从零开始学Spring Boot】

    之前在两篇文章中都有简单介绍或者提到过 自定义属性的用法: 25.Spring Boot使用自定义的properties[从零开始学Spring Boot] 51. spring boot属性文件之多 ...

  6. Spring Boot 2.0(五):Docker Compose + Spring Boot + Nginx + Mysql 实践

    我知道大家这段时间看了我写关于 docker 相关的几篇文章,不疼不痒的,仍然没有感受 docker 的便利,是的,我也是这样认为的,I know your felling . 前期了解概念什么的确实 ...

  7. Spring Boot 2.0系列文章(五):Spring Boot 2.0 项目源码结构预览

    关注我 转载请务必注明原创地址为:http://www.54tianzhisheng.cn/2018/04/15/springboot2_code/ 项目结构 结构分析: Spring-boot-pr ...

  8. 一个很有趣的示例Spring Boot项目,使用Giraphe CMS和Spring Boot

    6: 这是一个很有趣的示例Spring Boot项目,使用Giraphe CMS和Spring Boot. Giraphe是基于Spring Boot的CMS框架. https://github.co ...

  9. 深入Spring Boot:那些注入不了的Spring占位符(${}表达式)

    Spring里的占位符 spring里的占位符通常表现的形式是: <bean id="dataSource" destroy-method="close" ...

随机推荐

  1. 题解 CF241E Flights

    题目传送门 题目大意 给出一个 \(n\) 个点 \(m\) 条边的 \(\texttt{DAG}\) ,给每条边设定边权为 \(1\) 或者 \(2\) ,使得 \(1\to n\) 的每条路径长度 ...

  2. 2021.5.22 vj补题

    A - Marks CodeForces - 152A 题意:给出一个学生人数n,每个学生的m个学科成绩(成绩从1到9)没有空格排列给出.在每科中都有成绩最好的人或者并列,求出最好成绩的人数 思路:求 ...

  3. k8s replicaset controller 分析(3)-expectations 机制分析

    replicaset controller分析 replicaset controller简介 replicaset controller是kube-controller-manager组件中众多控制 ...

  4. 热身训练1 Game

    http://acm.hdu.edu.cn/showproblem.php?pid=5242 简要题意: 一棵树有n个节点,每个节点x有一个权值wi,我们要从根节点出发(不可回头),去收集每个节点的权 ...

  5. 一文读懂Android进程及TCP动态心跳保活

    一直以来,APP进程保活都是 各软件提供商 和 个人开发者 头疼的问题.毕竟一切的商业模式都建立在用户对APP的使用上,因此保证APP进程的唤醒,提升用户的使用时间,便是软件提供商和个人开发者的永恒追 ...

  6. Machine learning (7-Regularization)

    1.The Problem of Over-fitting 2.Cost Function 3.Regularized Linear Regression 4.Regularized Logistic ...

  7. spring cloud Alibaba --sentinel组件的使用

    sentinel组件 对于sentinel的前置知识这里就不多说了: 直接上代码: Release v1.8.1 · alibaba/Sentinel · GitHub  下载地址 springclo ...

  8. PCIE基本知识

    转载:https://zhuanlan.zhihu.com/p/139656925 前言 之前主要都在做FPGA算法层面的东西,最近觉得对于接口方面的知识比较欠缺,打算以PCI-E为例来系统的学习一下 ...

  9. Luogu P1118 [USACO06FEB]数字三角形 Backward Digit Sums | 搜索、数学

    题目链接 思路:设一开始的n个数为a1.a2.a3...an,一步一步合并就可以用a1..an表示出最后剩下来的数,不难发现其中a1..an的系数恰好就是第n层杨辉三角中的数.所以我们可以先处理出第n ...

  10. Swift-技巧(一)缩放并填充图片

    摘要 直接操作图片来实现它的缩放或者填充多余空间,首选 UIGraphicsBeginImageContext 函数来实现,它就相当于一个画布,你甚至可以用它来涂鸦. 最近有一个需求,就是将图片先等比 ...