zoukankan      html  css  js  c++  java
  • SpringBoot前世今生

    本文主要讲述spring boot的由来,即其它诞生的背景,初衷,现状,及对未来的展望。

    背景

    在很早的年代,J2EE还是java企业级应用的王者规范,EJB风行其道。后来有一个叫Rod Johnson的音乐学博士,写了本《Expert One on one J2EE without EJB》,发明了spring,创办了interface21公司,给Java的企业级开发带来了一阵春风。之后Spring势如破竹,跟随着互联网的兴起,占据着Java领域轻量级开发的王者地位。随着Java语言的发展,Spring也跟着推陈出新,比如Spring3支持了Java注解形式的配置,Spring4支持了java8,同时也推出了springboot。

    初衷

    推出springboot的初衷就是为了简化spring的配置,使得开发中集成新功能时更快,简化或减少相关的配置。

    现状

    目前springboot最新的是1.3.2-SNAPSHOT版本。主要有如下功能:

    • 自动配置(auto-configuration)
      一项简化配置的功能,比如在classpath中发现有spring security的jar包,则自动创建相关的bean等

    • starters(简化依赖)
      这个比较关键,方便spring去集成各类组件,比如redis、mongodb等等。

      • core(security、aop)

      • web(web、websocket、ws、vaadin、rest、mobile)

      • template(freemarker、velocity、groovy templates、thymeleaf)

      • data(jdbc、jpa、mongodb、redis、gemfire、solr、elasticsearch)

      • database(h2、hsqldb、mysql、postgresql)

      • social(facebook、linkedin、twitter)

      • io(batch、integration、jms、amqp)

      • ops(actuator、remote shell)

    • CLI(command-line interface),支持groovy开发

    • Actuator(对应用系统本身的自省功能)
      这个有点devops的味道,使得应用程序本身可以做到自省,比如查看系统运行了多少线程,gc的情况,运行的基本参数等等

    展望

    随着devops的兴起,以及docker技术的普及,微服务在一定场合会越来越受欢迎。即使不说微服务,springboot这种可以直接内嵌web服务器打成一个jar包的东东,也更符合devops的趋势:打成个jar包,往服务器上一扔,十分方便,外带自身带的actuator,把监控也给省了一大半,真正做到了可以把精力花在刀刃上。

  • 相关阅读:
    《陶哲轩实分析》习题10.4.3
    陶哲轩实分析定理10.1.3:导数运算的积法则和商法则
    《数学分析新讲》_张筑生,12.5节:隐函数定理(1)
    《数学分析新讲》_张筑生,12.5节:隐函数定理(1)
    《陶哲轩实分析》定理10.1.15:导数的链法则
    我的博客园的CSS和html设置
    陶哲轩实分析定理10.1.3:导数运算的积法则和商法则
    关于Eclipse中一个错误排查总结
    RMI, Dynamic Proxies, and the Evolution of Deployment
    Java垃圾回收机制浅析
  • 原文地址:https://www.cnblogs.com/austinspark-jessylu/p/8065276.html
Copyright © 2011-2022 走看看