我们为什么要学习 Spring Boot
现在貌似大家都知道 Spring Boot 很火了,做 Java 的不知道 Spring Boot 的都已经 Out 了,但是又有多少人是跟风学习的呢?今天我们就来说一下为什么要学习 Spring Boot 。
首先,要明确一个概念,Spring Boot 不是一个新的框架,它只是 Spring 公司下面的一个项目,也是由 Spring 演变出来的。什么?你还不知道 Spring,那就先学习 Spring 去吧。
我们在使用 SSM 搭建一个项目的时候,不可避免的要使用很多的配置,这一点相信大家都知道,之前为了使创建项目变得简单,我还专门整理了一个纯净版的配置。在这里。
写作常用的手法都是先抑后扬,接下来就是这个模板,先说明 Spring 中的缺点有哪些,而 Spring Boot 又是怎么来解决的。这里我就不贴具体的代码和配置了,大家应该都明白。
Spring 为我们提供了非常灵活的配置方式,基于 XML、注解、Java 配置、这些配置我们可以随意选用搭配,但是随之而来的就是复杂性的提高,对初学者就不是那么友好。
简单回忆一下,使用 Spring 我们要配置哪些东西,注册各种 Bean,注入各种 Bean,配置事务,数据源,数据库管理对象、前端控制器,视图解析器,关键是像注册和注入 Bean 是每一个模块都需要重复的动作,为什么不能自动化呢?
假如我们使用 Maven 来管理项目,那我们将会注入大量的依赖,不使用 Maven 就更坑了,添加大量的 jar 包,这点好像看起来没啥问题,就是长一点,需要啥添加啥就好,那是因为你没有见到 Spring Boot 的 Maven 配置~
而且你有没有出现过不同的依赖之间由于版本问题而无法兼容的问题,这些都是事呀,Spring Boot 完全给你解决了。
我们在运行项目的时候需要依赖 Servlet 容器,不管你是使用 Tomcat 还是 Jetty,最起码你的本地要有这个环境吧,没有的话你的项目立马熄火。想要快速的运行一个项目还真的不是那么容易呀。
上面我们是给 Spring 一顿贬呀,但是,Spring 还是非常重要的,这只是鸡蛋里面挑骨头,没有这些问题,怎么会有 Spring Boot 的用武之地呢,这就是进步嘛。
总结一下,我们刚刚提到的问题,在 Spring 搭建的项目中,我们有大量的配置,且大多类似,耽误了大量的时间,还容易出错,添加依赖的时候呢,一是太多,二是一不留神可能版本不兼容。
先说说 Spring Boot 是怎么解决这些问题的,什么样的思路,Spring Boot 中不是没有配置,而是配置基本都是默认的常规配置,当然,你想改也行,Maven 的依赖管理也是如此,Spring Boot 提供了父级依赖,我们只需添加父级依赖便可。同理,不想用它的自己配置可行。
具体整理一下 Spring Boot 的优点有 3 点:
1、自动配置
2、依赖管理变得简单
3、内置 Tomcat、Jetty 容器
好了,说了那么多 Spring Boot 的好,大家是不是特别想实现一波,嘿嘿,欲知后事如何,且听下回分解~
我们为什么要学习 Spring Boot的更多相关文章
- 为什么要学习 Spring Boot?
我们知道,从 2002 年开始,Spring 一直在飞速的发展,如今已经成为了在Java EE(Java Enterprise Edition)开发中真正意义上的标准,但是随着技术的发展,Java E ...
- 使用 Spring Boot 搭建一套增删改查(无多余代码)
前言 这是我学习 Spring Boot 的第三篇文章,终于可以见到效果了.错过的同学可以看看之前的文章 我们为什么要学习 Spring Boot Spring Boot 入门详细分析 在入门的基础上 ...
- Spring Boot 入门详细分析
推荐阅读: 我们为什么要学习 Spring Boot 我们搭建 Spring Boot 项目,可以使用 Spring 为我们提供的初始化网站,那个可能不太方便,今天呢,我们就来说说如何使用 IDEA ...
- 0. 前言【从零开始学Spring Boot】
[视频&交流平台] àSpringBoot视频 http://study.163.com/course/introduction.htm?courseId=1004329008&utm ...
- (0)前言【从零开始学Spring Boot】
在此对整体技术简单说明下. 开发工具和开发环境: Win7 64位操作 Eclipse-jee-mars-2-win32-x86_64 Jdk 1.8 Maven管理项目 如果要学习Spring Bo ...
- 喜大普奔,两个开源的 Spring Boot + Vue 前后端分离项目可以在线体验了
折腾了一周的域名备案昨天终于搞定了. 松哥第一时间想到赶紧把微人事和 V 部落部署上去,我知道很多小伙伴已经等不及了. 1. 也曾经上过线 其实这两个项目当时刚做好的时候,我就把它们部署到服务器上了, ...
- Spring Boot从零入门1_详述
本文属于原创,转载注明出处,欢迎关注微信小程序`小白AI博客` 微信公众号`小白AI`或者网站 [https://xiaobaiai.net](https://xiaobaiai.net) 
springmvc与struts2不同 1.springmvc的入口是一个servlet即前端控制器,而struts2入口是一个filter过滤器. 2.springmvc是基于方法开发(一个url对 ...
- caffe源码阅读(1)_整体框架和简介(摘录)
原文链接:https://www.zhihu.com/question/27982282 1.Caffe代码层次.回答里面有人说熟悉Blob,Layer,Net,Solver这样的几大类,我比较赞同. ...
- emmc基础技术8:操作模式3-interrupt mode
1. 前言 eMMC总线操作包含: boot mode, device identification mode interrupt mode data transfer mode 本文主要描述inte ...
- ARMV8 datasheet学习笔记3:AArch64应用级体系结构之Memory order
1.前言 2.基本概念 Observer 可以发起对memory read/write访问的都是observer; Observability 是一种观察能力,通过read可以感知到别的observe ...
- Bootstrap3.0学习第一轮(入门)
详情请查看 http://aehyok.com/Blog/Detail/7.html 个人网站地址:aehyok.com QQ 技术群号:206058845,验证码为:aehyok 本文文章链接:ht ...
- Thymeleaf:访问Spring中的bean
项目做了动静分离,即静态文件全部放在nginx中,动态文件在tomcat中,如何引用静态文件,我是这么做的,见下: 运行结果:
- Go语言学习之路(持续更新中)
菜鸟 Go语言教程 教程(RUNOOB.COM):http://www.runoob.com/go/go-tutorial.html Go全球官网:https://golang.org/ (2018- ...
- Day6------------磁盘用满的两种情况
1.文件包含元数据和写入的内容 元数据:存在硬盘中的inode ls -i /etc/passwd.bak 查看inode df -i 查看inode 2.磁盘用满的两种情况 1).内容太多 2).空 ...
- 解析神奇的 Object.defineProperty
这个方法了不起啊..vue.js是通过它实现双向绑定的..而且Object.observe也被草案发起人撤回了..所以defineProperty更有必要了解一下了. 几行代码看他怎么用 var a= ...
- Storm的部署
配置方案如下 node1 Nimbus zookeeper node2 Supervisor zookeeper node3 Supervisor zookeeper node4 Supervisor ...