Springboot系列1_什么是Springboot

*/-->

code {color: #FF0000}
pre.src {background-color: #002b36; color: #839496;}

Springboot系列1_什么是Springboot

现在Springboot变得越来越热门了,那么,什么是Springboot呢?

1 远古时代

话说,在Java很早的时候,还没有任何框架。人们完成工作,都是靠一个一个的对象定义,然后,对象使用对象,完成所有的任务。这样的问题就是,对象和对象之间的耦合比较厉害,耦合之后,就不方便重用。

2 新石器时代

于是,有人就开始做分离工作。分离无外乎两种,一种垂直切分,一种水平切分。切完之后,做一个框架,然后,把对象一个一个塞在里面就完成了整体的功能。就好像原来的电脑,所有的配件都是焊死在主板上的,后来就设计了各种卡槽,然后,把各种不同的配件单独设计,需要时可以按照需要进行组合插拔。EJB就是最早的这样一个框架,它是上个世纪框架的统治者。

但它的统治之下,大家发现还是很麻烦,主要是太笨重了,所有的配件都要配一遍。

3 蒸汽机时代

于是,在2004年的时候,有人推出了Spring。Spring采用一种简单轻便的方式来组织对象。就好比,原来是EJB是笨重的巨型机,Spring是轻便的组装台式机。我们需要多高频率的CPU、多大的内存、多大的硬盘,我们只需要一个一个的去生产或购买,然后我们手动一个一个的把这些组件按照指定的接口插上去就可以使用了。
这一切看起来已经很美好了,但,就和电脑的发展一样。经过十来年的发展,大家都对这种每次自己一个一个安装电脑配件的方式感到腻烦了。能不能只需要生成或者购买配件,然后,自动帮我们组装好电脑?而不需要每次都自己去把每一个配件安装到对应的卡槽里面去?

4 电气时代

在大概2014年的时候,推出Spring的那帮人又推出了Springboot。它就提供了自动的装配功能,只要给它CPU、内存、硬盘,它就会自动根据各自的卡槽类型把这些配件安装好。那么,当我们每一个配件都只有一个的时候,是很容易就安装好了的。那么,当有多个同类的配件,比如有几块内存,怎么才能安装到正确的位置上去。或者,我们能不能选择部分手动安装呢?这个是完全可行的。只需要编写少量配置代码就可以了。

另外,我们代码的依赖包,就和生成配件需要的电器件一样,需要逐个去选择,现在也有套餐形式。比如,原来Spring生产一个CPU,需要定义使用多个的电阻、多大的电容等。现在Springboot就只需要指定,需要生成CPU,它就会自动把生产CPU所需的配件配齐了。

5 结论

所以,对于还没有使用Springboot,或者还在犹豫是使用Spring还是使用Springboot?计较它们有什么区别?的同学们,不要多想了,赶快使用Springboot吧。

Date: 2017-06-17 21:26

Created: 2017-06-17 周六 22:36

Emacs 25.2.1 (Org mode 8.2.10)

Validate

Springboot系列1_什么是Springboot的更多相关文章

  1. SpringBoot系列十二:SpringBoot整合 Shiro

    声明:本文来源于MLDN培训视频的课堂笔记,写在这里只是为了方便查阅. 1.概念:SpringBoot 整合 Shiro 2.具体内容 Shiro 是现在最为流行的权限认证开发框架,与它起名的只有最初 ...

  2. springboot系列(十)springboot整合shiro实现登录认证

    关于shiro的概念和知识本篇不做详细介绍,但是shiro的概念还是需要做做功课的要不无法理解它的运作原理就无法理解使用shiro: 本篇主要讲解如何使用shiro实现登录认证,下篇讲解使用shiro ...

  3. springboot系列(八)springboot整合mybatis

    本篇介绍一下在springboot中整合mybatis ,使用mysql数据库,集成durid 连接池技术,全部代码是手动生成,没有使用代码生成器来构建代码. 一.创建数据库和表 二.在pom中添加依 ...

  4. springboot系列(四)springboot 配置

    在springboot出现之前,spring项目会存在多个配置文件,如web.xml,配置spring的多个spring-xxx.xml,xxx代表配置spring的某一功能,如aplication- ...

  5. SpringBoot系列:五、SpringBoot使用Actuator

    Actuator为springboot提供了运行状态监控的功能 通过集成它我们可以试试获取到应用程序的运行信息 首先,在pom.xml中引入起步依赖 <dependency> <gr ...

  6. SpringBoot系列:三、SpringBoot中使用Filter

    在springboot中要使用Filter首先要实现Filter接口,添加@WebFilter注解 然后重写三个方法,下图示例是在Filter中过滤上一届中拿配置的接口,如果是这个接口会自动跳转到/P ...

  7. SpringBoot系列:二、SpringBoot的配置文件

    SpringBoot的配置文件在resources文件夹下 springboot的配置文件支持两种形式的写法,一种是经典的properties另一种是yml yml通过空格缩进的形式来表示对象的层级关 ...

  8. SpringBoot系列:一、SpringBoot搭建

    打开IDEA,新建一个spring工程,然后无脑下一步就行. 新建完成后的目录结构 java文件夹下是java源码 resources下是配置文件 test下是测试文件 添加web模块支持,在pom. ...

  9. springboot系列总结(一)---初识springboot

    Spring Boot是一个简化Spring开发的框架.用来监护spring应用开发,约定大于配置,去繁就简,just run 就能创建一个独立的,产品级的应用. 一说springboot ,Java ...

随机推荐

  1. 剑指offer学习--初级c++面试题

    定义一个空的类型,里面没有任何成员函数和成员变量,对该类型求sizeof,得到的结果是多少? 答案是1.空类型中的实例中不包含任何信息,本来求sizeof应该是0,但是当我们声明该类型的实例的时候,他 ...

  2. 将ibatis迁移到mybatis3的过程记录

    将ibatis迁移到mybatis3的过程记录 场景:有些以前的老项目是使用ibatis开发的,现在有转换成mybatis3的需求. 环境准备:需要安装Ant,以下是本人的安装版本,具体怎么安装不再赘 ...

  3. Java疯狂讲义笔记——枚举类

    枚举类 ——Java5[基础知识]1,定义枚举类——关键字 enum (地位与class.interface相同).2,枚举类是一个特殊的类,可以有成员变量.方法,实现一个或多个接口,定义自己的构造器 ...

  4. Vue 侦听属性

    Vue 提供了一种更通用的方式来观察和响应 Vue 实例上的数据变动:侦听属性 <!DOCTYPE html> <html> <head> <meta cha ...

  5. oracle的分析函数over

    参考地址:https://www.cnblogs.com/chinas/p/7058771.html?utm_source=itdadao&utm_medium=referral#_lab2_ ...

  6. 神经网络学习笔记(二):feedforward和feedback

    维基百科解释: Feed-forward, sometimes written feedforward, is a term describing an element or pathway with ...

  7. Android SDK的下载与安装*(PC版)

    Android SDK的下载与安装   一.Android SDK简介下载地址:https://www.androiddevtools.cn/ 将下载后的安装包解压到相应的目录下,如下图: 三.安装A ...

  8. 单词计数-MapReduceJob

    pom文件 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3. ...

  9. CF 452E. Three strings(后缀数组+并查集)

    传送门 解题思路 感觉这种题都是套路之类的??首先把三个串并成一个,中间插入一些奇怪的字符,然后跑遍\(SA\).考虑按照\(height\)分组计算,就是每个\(height\)只在最高位计算一次, ...

  10. windows防火墙批量开放端口

    windows自带的防火墙没有增加端口范围的功能,这让一些常见的配置变得非常麻烦(比如FTP被动模式下,就需要在防火墙上开启端口范围),经过查询资料,使用以下cmd批处理内容,即可增加端口范围: ec ...