我们为什么要学习 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) ![](h ...
- 阿里架构师的这一份Spring boot使用心得:网友看到都收藏了
阿里架构师的这一份Spring boot使用心得: 这一份PDF将从Spring Boot的出现开始讲起,到基本的环境搭建,进而对Spring的IOC及AOP进行详细讲解.以此作为理论基础,接着进行数 ...
- 两个开源的 Spring Boot + Vue 前后端分离项目
折腾了一周的域名备案昨天终于搞定了. 松哥第一时间想到赶紧把微人事和 V 部落部署上去,我知道很多小伙伴已经等不及了. 1. 也曾经上过线 其实这两个项目当时刚做好的时候,我就把它们部署到服务器上了, ...
随机推荐
- 【金色】种瓜得瓜,种豆得豆 Gym - 102072H (线段树)
题目链接:https://cn.vjudge.net/problem/Gym-102072H 题目大意:中文题目 具体思路:通过两棵线段树来维护,第一棵线段树来维护当前坐标的点的日增长速度(默认每一年 ...
- mysql 案例~select引起的性能问题
案例1 背景:测试环境下发现大量select查询,而且负载飙升到90+ 排查思路: 1 老规则,按照排错脚本走一圈,规划出几个元素(1 针对库访问的统计 2针对具体语句类型的统计),发现有大量的sel ...
- 如何调整cell的大小
一般情况下,我们使用tableview的时候从来没有设置过cell的大小(w,h).位置(x,y)等,而是系统直接给我们自动生成,但是有的时候我们可能会改动cell的大小及位置,比如:在适配ios6跟 ...
- Jetson tk1 刷机后要做的几件事
参考简书文章: http://www.jianshu.com/p/997ede860d74 1. 查看Jetson TK1 L4T版本 head -n 1 /etc/nv_tegra_release ...
- 【逆向工具】使用x64dbg+spy去除WinRAR5.40(64位)广告弹框
1 学习目标 WinRAR5.40(64位)的弹框广告去除,由于我的系统为x64版本,所以安装了WinRAR(x64)版本. OD无法调试64位的程序,可以让我熟悉x64dbg进行调试的界面. 其次是 ...
- Getting started with machine learning in Python
Getting started with machine learning in Python Machine learning is a field that uses algorithms to ...
- caffe-win10-cifar10
因为是在win10下安装的GPU版caffe,所以不能直接运行linux里的shell脚本.但是win10自带bash,可以运行.sh文件,网上也有直接下Cygwin和git的.我是下载好git后才知 ...
- 用rand()和srand()产生伪随机数的方法总结 【转】
转自:http://blog.chinaunix.net/uid-26722078-id-3754502.html 标准库(被包含于中)提供两个帮助生成伪随机数的函数: 函数一:int rand(vo ...
- ulimit -n 修改
Linux系统里打开文件描述符的最大值,一般缺省值是1024,对一台繁忙的服务器来说,这个值偏小,所以有必要重新设置linux系统里打开文件描述符的最大值.那么应该在哪里设置呢? [root@loca ...
- sqlserver 无法获得数据库独占权
ALTER DATABASE trqxs_cs SET OFFLINE WITH ROLLBACK IMMEDIATE