Spring Cloud Alibaba 实战(2) - 关于Spring Boot你不可不知道的实情

0 相关源码

1 什么是Spring Boot

一个快速开发的脚手架

作用

快速创建独立的、生产级的基于Spring的应用程序

特性

  • 无需部署WAR文件
  • 提供starter简化配置
  • 尽可能自动配置Spring以及第三方库
  • 提供“生产就绪”功能,例如指标、健康检查、外部配置等
  • 无代码生成&无XML

2 编写一个Spring Boot应用

2.1 需求

  • 整合Spring MVC
  • /test路径(端点)

2.2 使用Spring Initializr快速创建Spring Boot应用

Spring Cloud Alibaba 实战(2) - 关于Spring Boot你不可不知道的实情_第1张图片

Spring Cloud Alibaba 实战(2) - 关于Spring Boot你不可不知道的实情_第2张图片

Spring Cloud Alibaba 实战(2) - 关于Spring Boot你不可不知道的实情_第3张图片

Spring Cloud Alibaba 实战(2) - 关于Spring Boot你不可不知道的实情_第4张图片

  • 编写测试代码
    Spring Cloud Alibaba 实战(2) - 关于Spring Boot你不可不知道的实情_第5张图片
  • 运行输出Spring Cloud Alibaba 实战(2) - 关于Spring Boot你不可不知道的实情_第6张图片

也可以使用

  • mvn clean install确保打包成功
    Spring Cloud Alibaba 实战(2) - 关于Spring Boot你不可不知道的实情_第7张图片
  • java -jar 运行程序
    Spring Cloud Alibaba 实战(2) - 关于Spring Boot你不可不知道的实情_第8张图片

3 组成分析

  • pom.xml
    Spring Cloud Alibaba 实战(2) - 关于Spring Boot你不可不知道的实情_第9张图片

  • 配置文件
    Spring Cloud Alibaba 实战(2) - 关于Spring Boot你不可不知道的实情_第10张图片

  • static目录
    存放静态文件

  • template目录
    存放模板文件,已过时

4 开发利器

添加依赖

  • pom.xml中的依赖实例
    Spring Cloud Alibaba 实战(2) - 关于Spring Boot你不可不知道的实情_第11张图片
  • 官方支持依赖列表
    Spring Cloud Alibaba 实战(2) - 关于Spring Boot你不可不知道的实情_第12张图片

写注解

Spring Cloud Alibaba 实战(2) - 关于Spring Boot你不可不知道的实情_第13张图片

写配置

Spring Cloud Alibaba 实战(2) - 关于Spring Boot你不可不知道的实情_第14张图片

6 Spring Boot配置管理

yml配置

  • 注意缩进同一与冒号左右的空格
    Spring Cloud Alibaba 实战(2) - 关于Spring Boot你不可不知道的实情_第15张图片
  • 注意与properties文件的不同
    Spring Cloud Alibaba 实战(2) - 关于Spring Boot你不可不知道的实情_第16张图片

配置管理的各种姿势

Spring Cloud Alibaba 实战(2) - 关于Spring Boot你不可不知道的实情_第17张图片

配置管理常用方式

  • 配置文件
  • 环境变量
  • 外部配置文件
    会读取和jar文件相同路径下的配置文件,且优先级高于jar配置
  • 命令行参数

尽量保持配置最简单且统一,规避优先级冲突问题!

7 Profile

不同环境不同配置

使用

  • yml配置文件
    Spring Cloud Alibaba 实战(2) - 关于Spring Boot你不可不知道的实情_第18张图片
    Spring Cloud Alibaba 实战(2) - 关于Spring Boot你不可不知道的实情_第19张图片

  • 添加参数并启动程序
    Spring Cloud Alibaba 实战(2) - 关于Spring Boot你不可不知道的实情_第20张图片

  • 查看端点以确认信息
    Spring Cloud Alibaba 实战(2) - 关于Spring Boot你不可不知道的实情_第21张图片

  • 那么如果不指定参数呢,又运行的何种环境呢,让我们来看一下:
    Spring Cloud Alibaba 实战(2) - 关于Spring Boot你不可不知道的实情_第22张图片

  • 默认是default,难道我非要将dev环境改为default才可以使用默认配置?显然SpringBoot另辟蹊径:
    Spring Cloud Alibaba 实战(2) - 关于Spring Boot你不可不知道的实情_第23张图片
    Spring Cloud Alibaba 实战(2) - 关于Spring Boot你不可不知道的实情_第24张图片

如果不是yml文件,而是用properties配置呢

Spring Cloud Alibaba 实战(2) - 关于Spring Boot你不可不知道的实情_第25张图片
Spring Cloud Alibaba 实战(2) - 关于Spring Boot你不可不知道的实情_第26张图片

  • 指定参数
    Spring Cloud Alibaba 实战(2) - 关于Spring Boot你不可不知道的实情_第27张图片
    Spring Cloud Alibaba 实战(2) - 关于Spring Boot你不可不知道的实情_第28张图片
  • 默认dev
    Spring Cloud Alibaba 实战(2) - 关于Spring Boot你不可不知道的实情_第29张图片
  • 注意先将启动参数prod关闭,避免配置优先级冲突!

8 总结

  • 使用Spring Initializr快速创建应用
  • 应用组成分析
  • 开发三部曲
  • Actuator
  • 配置管理
  • Profile

参考

Spring Boot官方文档

你可能感兴趣的:(SpringBoot框架,spring,spring,boot,java)