microservices-book
  • 前言
  • 微服务基础
    • 微服务架构和单体应用架构
    • 微服务架构特征
    • 微服务治理与去中心化
    • 微服务演进式设计与优缺点
    • 微服务宏观把控
  • 面向服务的架构
    • SOA 理论与概念
    • 维基百科微服务
    • 微服务和 SOA 对比
  • Spring Boot
    • Spring Boot 应用起步与配置
    • Spring Boot 应用配置分析
    • Spring Boot 打包文件内容与结构
    • 使用 Gradle 构建 Spring Boot 应用
    • Spring Boot 参数自动装配
    • Jar 文件规范
    • Spring Boot Loader 源码分析
    • 反射扩展
    • JDWP 远程调试
    • 使用 JDWP 调试 Spring Boot Loader 源码
    • @SpringBootApplication
    • @SpringBootConfiguration
    • @Configuration
Powered by GitBook
On this page
  • UTC
  • Banner
  • 进程运行
  • Profile
  • Gradle
  • 启动类
  • 配置文件
  • properties 文件格式
  • yml 文件格式

Was this helpful?

  1. Spring Boot

Spring Boot 应用配置分析

PreviousSpring Boot 应用起步与配置NextSpring Boot 打包文件内容与结构

Last updated 5 years ago

Was this helpful?

UTC

一种时间格式,国际化的项目,最好采用 utc 格式,因为 utc 的格式是没有时区的问题,在日期传递过程中效果是最好的。

Banner

控制台会打印 Spring Boot Logo 以及版本信息,这个操作可以通过配置实现自定义。

进程运行

从控制台的输出信息可以知道 Spring Boot 都是运行在进程内的,如何查看?

指令:lsof -i:8080 或 ps -ef | grep java

Profile

一般模式:一套配置文件,基于开发、测试、线上等多种环境时,构建多个整套配置文件,在项目启动的时候,通过一个参数来实现配置的切换。目的解决代码和配置分离,但不是最好的方式。

比较好的方式:代码和配置完全隔离。项目工程当中是看不到任何配置信息的,配置信息是集中的放在 Spring Cloud Config 中,可以对其加密。

更好的方式:配置中心。比如:携程的 。

Gradle

推荐学习。

启动类

每个 Spring Boot 应用都有一个启动类。

启动类需要以下几个条件:

  • 由 @SpringBootApplication 注解修饰

  • 启动类当中有一个 main 方法,也只有一句启动代码

    SpringApplication.run(xxx.class, args);

配置文件

Spring Boot 提供了两种类型的配置文件形式,但是都是遵循约定优于配置,都叫做 application 这个名字,虽然可以,尽量不要修改这个名字。

properties 文件格式

传统的经典文件格式。

application.properties

server.port=8080
server.address=127.0.0.1
server.context-path=/

yml 文件格式

application.yml

server:
    port: 8080
    address: 127.0.0.1
    context-path: /

感觉上 yml 的方式要更简洁一点,可以少写前缀 server 很多次。

注意事项:

  • 当 yml 配置的最后一层,也就是实际值和前面对应的 key 后面的冒号之间,有一个空格。

  • 缩进不允许使用tab只能使用空格。

例如:port: 8080,冒号和 8080 之间必须有空格,可以观察 idea 或者 md 的引用代码区域是否正常高亮显示来判断书写正确与否。

(Yet Another Markup Language),一种新的文件格式。

例如
Apollo
YAML