美文网首页SpringBootJava
SpringBoot2.X简介——持续更新

SpringBoot2.X简介——持续更新

作者: maxzhao_ | 来源:发表于2019-01-26 14:02 被阅读0次

    Spring Boot好学吗?

    当然了,欢迎入坑

    学会使用比较容易,想要懂得怎么用的原理就很难了。

    起跳准备

    这里有几个常用地址:

    也有几个常用的插件版本说明:

    Spring Boot 基本

    • 组件自动装配:规约大于配置,专注核心业务
      这里需要深入了解的是源自spring framework中的 模式注解、@Enable模块、条件装配、加载机制,Spring Boot对它们进行了修改。

    • 外部化配置:一次构建、按需调配、到处运行
      这里需要了解的是外部化配置与Environment抽象的关系、生命周期,
      Spring Boot2.0 用的新的API,与1.x版本部分不兼容。

    • 嵌入式容器:内置容器(传统的Servlet容器、Reactive Web)、无需部署、独立运行
      为了支持reactive使用场景,内嵌的容器包结构被重构了的幅度有点大。EmbeddedServletContainer被重命名为WebServer,并且org.springframework.boot.context.embedded 包被重定向到了org.springframework.boot.web.embedded包下。举个例子,如果你要使用TomcatEmbeddedServletContainerFactory回调接口来自定义内嵌Tomcat容器,你现在应该使用TomcatServletWebServerFactory。

    • Spring Boot Starter:简化依赖、按需装配、自我包含
      依赖管理、条件装配、装配顺序(重要,可以参考autoconfigure包下的spring.factories文件)
      不能再自动配置HazelcastInstance进行缓存。 因此,spring.cache.hazelcast.config属性不再可用。

    • Production-Ready:一站式运维、生态无缝整合(MapReducePrometheusCloud Native
      这里需要了解的是健康检查、数据指标、@Endpoint管控

    Spring Boot 与Java EE 规范

    这里可以参考一下这里也可以参考一下
    Web:servlet
    Sql:JDBC
    数据校验:Bean Validation
    缓存:Java Caching API
    WebSockets:Java API for WebSocket
    Web Services:有点久远
    Java管理:JMX
    消息:JMS(Apache ActiveMQ

    Spring Boot 核心特性


    • 组件自动装配:Web MVC、Web Flux、JDBC……
    • 嵌入式Web容器:Tomcat、Jetty、Undertow以及Web Flux
    • 生产特性:一些非功能特性(指标、健康检查、外部化配置等)

    组件自动装配

    • 激活自动装配:@EnableAutoConfiguration(@SpringBootApplication已经默认激活)

    • 配置:/METE-INF/spring.factories(前面说到过)
      有了这些Spring Boot的默认配置,我们只有引入相应的依赖,就会被自动装配。

    • 实现:xxxAutoConfiguration

    嵌入式Web容器

    • Web Servlet
    • Web Reactive
      两者都是兼容的,也可以相互转换。
      这里我也了解了一下(没有亲自测试),相比于Servlet容器,在获取数据和吞吐量上来说,Web Flux 要比Servlet快很

    生产特性

    • 指标:/actuator/metrics
    • 健康检查:/actuator/health
    • 外部化配置:/actuator/configprops
      在spring boot 2.0之后,需要有/actuator前缀,也可以自己配置。
    #比如我们想把/autuator/health修改为/healthcheck。
    management.endpoints.web.base-path=/
    management.endpoints.web.path-mapping.health=healthcheck
    

    Web 应用

    传统Servlet应用

    • Servlet组件:Servlet、Filter、Listener

    • Servlet注册

      • Servlet注解
        • @ServletComponentScan+@WebServlet、@WebFilter、@WebListener
      • Spring Bean
        • @Bean+Servlet、Filter、Listener
      • RegistrationBean(Spring Boot新API)
        • ServletRegistrationBean
        • FilterRegistrationBean
        • ListenerRegistrationBean
    • 异步非阻塞异步Servlet、非阻塞Servlet

    数据操作(JDBC、JPA)

    功能扩展

    组件自动装配

    外部化配置

    嵌入式容器

    运维管理

    相关文章

      网友评论

        本文标题:SpringBoot2.X简介——持续更新

        本文链接:https://www.haomeiwen.com/subject/ipcnqqtx.html