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. Oracle ORA-01033: ORACLE initialization or shutdown in progress 错误解决办法. 重启服务

    今天用Oracle突然出现Oracle ORA-01033: ORACLE initialization or shutdown in progress. 想起前两天删掉了几个DBF文件,幸好还没有清 ...

  2. vue项目build打包后图片路径不对导致图片空白不显示问题解决方法

    1.在上篇文章src配置及引入的基础上修改项目配置: 文章链接地址:https://www.cnblogs.com/hsl-shiliang/p/10333022.html. 2.具体配置过程如图: ...

  3. 02.Linux-CentOS系统NFS挂载时拒绝访问挂载问题

    问题: 在挂载nfs时报拒绝访问挂载:mount -t nfs 192.163.1.10:/home/opneuser/upload /home/openuser/upload/ 报错信息:Mount ...

  4. Codeforces Round #393 (Div. 2) - C

    题目链接:http://codeforces.com/contest/760/problem/C 题意:有n个烤串,并且每个烤串起初都放在一个火盆上并且烤串都正面朝上,现在定义p序列,p[i]表示在i ...

  5. Flutter的DateTime轉換的各種方法

    概述: 表示一个时间点 通过构造函数或解析格式化的字符串创建DateTime对象,并且符合ISO 8601标准的子集,小时是24小时制,范围在0-23之间 DateTime对象创建之后,将是固定不变的 ...

  6. BZOJ5261 Rhyme

    传送门 广义后缀自动机= =+ 跟ptx大爷的博客学的 戳我传送 我写的第一种 建立Trie树的写法 bfs建立SAM 为什么是bfs呢 我也不知道(GG) 经过我一番抱大腿+询问 各位大爷说的原因是 ...

  7. Spring---条件注解@Conditional

    1.概述 1.1.Spring4  提供了一个更通用的  基于条件的Bean的创建,即使用@Conditional注解: 1.2.案例 package com.an.config; import co ...

  8. JavaWeb(二):Servlet

    一.本教程使用的Web容器——Tomcat Tomcat是提供一个支持Servlet和JSP运行的容器.Servlet和JSP能根据实时需要,产生动态网页内容.而对于Web服务器来说, Apache仅 ...

  9. Appium API文档中文版

    传送门  https://testerhome.com/topics/3144

  10. HAProxy基于Centos6.5安装及配置

    一.使用2.6内核Linux,配置sysctl参数 vi /etc/sysctl.conf #haproxy confignet.ipv4.tcp_tw_reuse = 1net.ipv4.ip_lo ...