我们为什么要学习 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)  #检查是否obj是否是object的类cls的对象 #判断一个对象是否是一个类的实例 class F00(object): pass obj = F00() ...
- shiroWeb项目-授权(十一)
使用PermissionsAuthorizationFilter 在applicationContext-shiro.xml中配置url所对应的权限. 测试流程: 1.在applicationCont ...
- Latex 公式居中
这么简单的功能要是还要加工具包,LaTeX也不用混了~ 公式用\[...\]来写可以达到公式居中效果. 或者在equation环境外加center环境: \begin{center} \begin{e ...
- Latex graphicx 宏包 scalebox命令
scalebox 命令需要加载 \usepackage{graphicx} \scalebox{水平缩放因子}[垂直缩放因子]{对象} \scalebox 命令对其作用的对象进行缩放,使缩放后的对 ...
- Linux磁盘分区、挂载
⒈Linux下磁盘说明 1)Linux硬盘分IDE硬盘和SCSI硬盘,目前基本上是SCSI硬盘. 2)对于IDE硬盘,使用“hdx~”标识符,“hd”代表IDE硬盘. 对于SCSI硬盘,使用“sd ...
- GitHub:Awesome-Hacking(黑客技能列表-恶意代码)
0 初衷 GitHub这一份黑客技能列表很不错,包含了多个方向的安全.但目前我关注只有逆向工程与恶意代码,所以其他的被暂时略过. 虽然很感谢作者的辛勤付出,但并不打算复制粘贴全套转载.逐条整理是为了从 ...
- 【转】Python中的字符串与字符编码
[转]Python中的字符串与字符编码 本节内容: 前言 相关概念 Python中的默认编码 Python2与Python3中对字符串的支持 字符编码转换 一.前言 Python中的字符编码是个老生常 ...
- mysql安装与卸载(绿色版)
1.下载压缩包,解压 2.配置环境变量 PATH:%MYSQL_HOME%\bin 3.在安装目录下新建my.ini配置文件: [mysql] default-character-set=utf8 [ ...
- 安装installshield问题
install designer中 general information 选择setup languages shortcuts编辑 开始 中显示目录 文件路径 C:\Program Files ...
- adb启动和停止android app方法
一.启动app adb shell am start 包名/MainActivity 上面涉及到的包名及mainactivity获取办法 方法一: 1.adb shell 2.dumpsys act ...