我们为什么要学习 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)  if(rep == a) { print("\(a)是回 ...
- 三 、 Multivariance Linear Regssion练习(转载)
转载:http://www.cnblogs.com/tornadomeet/archive/2013/03/15/2962116.html 前言: 本文主要是来练习多变量线性回归问题(其实本文也就3个 ...
- 移动端rem单位适配使用
1.适配方法 //缩放比例!function(e,t){function i(){o=1,e.devicePixelRatioValue=o,s=1/o;var t=a.createElement(& ...
- jvm系列六、windows用jdk自带工具jps、jstack找出性能最差的代码
一.运行程序TestGC 二.用jps找出当前应用的进程号PID 到jdk安装目录的bin目录下输入: jps -l PID为1264 三.启动Process Explorer(下载地址:https: ...
- nginx访问报错403 is forbidden
由于开发需要,在本地环境中配置了nginx环境,使用的是Centos 6.5 的yum安装,安装一切正常,于是把网站文件用mv命令移动到了新的目录,并相应修改了配置文件,并重启Nginx. 重启就报个 ...
- tomcat多项目
在一个tomcat下面布置2个项目 项目的访问路径: http://localhost:8081/ http://localhost:8082/ 1.建立两个站点(虚拟目录,目录中必须包含必要的配置文 ...
- 服务发现之consul的介绍、部署和使用
什么是服务发现 微服务的框架体系中,服务发现是不能不提的一个模块.我相信了解或者熟悉微服务的童鞋应该都知道它的重要性.这里我只是简单的提一下,毕竟这不是我们的重点.我们看下面的一幅图片: 图中 ...
- C++ code:for loop designs
1 用for循环编出系列图形 该图形一共10行,每一行增加一个字符,所以应循环10次,每次输出一行.其循环模式为: :i<=;++i) { 输出第i行 换行 } 我们注意到,每一行长度的变化正 ...
- Python 索引迭代
1.使用enumerate函数 L = ['Adam', 'Lisa', 'Bart', 'Paul'] for index, name in enumerate(L): print inde ...
- ie7 下 float换行问题与vertical-align:middle; 失效问题
声明:web小白的笔记,欢迎大神指点!联系QQ:1522025433. ie7 下 float换行问题 请直接看代码中和代码中的注释: <!doctype html> <html&g ...