spring boot-17

spring boot 核心配置文件

在 Spring Boot 应用程序中,核心配置文件是 `application.properties` 或 `application.yml`。这两个文件用于定义和管理应用程序的配置属性。它们位于 `src/main/resources` 目录下,并且在 Spring Boot 应用程序启动时自动加载。

核心配置文件的作用

1. **定义应用程序配置**:
   - **`application.properties`** 和 **`application.yml`** 是用来定义应用程序的各种配置属性,例如数据库连接、端口号、日志级别等。

2. **集中管理配置**:
   - 这些文件使得配置集中管理,便于在不同环境中进行调整和管理。

3. **支持多种格式**:
   - Spring Boot 支持 `application.properties`(属性文件格式)和 `application.yml`(YAML 文件格式)。你可以根据需要选择其中一种格式来定义配置。

### `application.properties` 和 `application.yml` 的示例

**`application.properties` 示例:**


# 设置服务器端口
server.port=8080

# 配置数据源

spring.datasource.url=jdbc:mysql://localhost:3306/mydb
spring.datasource.username=root
spring.datasource.password=password

# 配置日志级别

logging.level.org.springframework.web=DEBUG

**`application.yml` 示例:**


server:
  port: 8080

spring:
  datasource:
    url: jdbc:mysql://localhost:3306/mydb
    username: root
    password: password

logging:
  level:
    org.springframework.web: DEBUG

配置文件的加载顺序

1. **默认位置**:
   - Spring Boot 默认会在 `src/main/resources` 目录下寻找 `application.properties` 或 `application.yml` 文件。

2. **外部配置**:
   - 可以通过 `spring.config.location` 和 `spring.config.additional-location` 属性来指定外部的配置文件路径。

3. **命令行参数**:
   - 可以通过命令行参数传递配置,例如 `--server.port=9090`,这些参数的优先级高于配置文件中的属性。

4. **Spring Boot 属性优先级**:
   - **命令行参数** > **配置文件** > **操作系统环境变量** > **Java 系统属性** > **默认属性**(通过 `SpringApplication.setDefaultProperties` 设置)。

### 配置文件的多环境支持

Spring Boot 支持不同环境的配置,可以通过使用 Spring Profiles 来实现。例如,可以在 `application-dev.properties`、`application-prod.properties` 等文件中定义不同环境的配置,并在启动应用时激活特定的 profile。

**示例 `application-dev.properties` 文件:**


server.port=8081
spring.datasource.url=jdbc:mysql://localhost:3306/devdb

**示例 `application-prod.properties` 文件:**


server.port=8080
spring.datasource.url=jdbc:mysql://localhost:3306/proddb

激活 profile


java -jar myapp.jar --spring.profiles.active=dev

 总结

    

Spring Boot 是一种用于构建独立的、可执行的、生产级的Spring应用程序的框架。在Spring Boot中,可以使用配置文件来设置应用程序的各种属性和行为。在本文中,我将总结Spring Boot的核心配置文件,并在1000字内进行详细说明。

  1. application.properties/application.yml 这是Spring Boot的主配置文件,用于配置应用程序的各种属性。可以通过设置属性的键值对来修改默认配置。例如,可以设置server.port属性来指定应用程序的端口号。

  2. application-{profile}.properties/application-{profile}.yml 这些是Spring Boot的配置文件的变种,用于在不同的环境中加载不同的配置。可以通过设置spring.profiles.active属性来指定要使用的配置文件。例如,可以创建一个application-dev.properties文件,用于开发环境的配置。

  3. bootstrap.properties/bootstrap.yml 这是Spring Boot的引导配置文件,用于配置系统的一些基本属性。与application.properties/application.yml不同,bootstrap.properties/bootstrap.yml文件在应用程序启动之前就被加载和解析。它主要用于配置与应用程序启动相关的属性,如配置中心的URL等。

  4. logging.properties 这是Spring Boot的日志配置文件,用于配置应用程序的日志记录器。可以通过设置日志属性的键值对来修改默认的日志配置。例如,可以设置logging.level.root属性来指定根日志记录器的日志级别。

  5. banner.txt/banner.jpg 这些是Spring Boot的启动横幅文件,用于在应用程序启动时显示自定义的横幅。可以通过创建一个ASCII字符或图像的文件来修改默认的横幅。例如,可以创建一个banner.txt文件,用于在启动时显示自定义的横幅文本。

  6. static/ 这是Spring Boot的静态资源文件夹,用于存放应用程序的静态资源文件。可以将CSS、JavaScript、图片、HTML等文件放在static文件夹中,这些文件可以直接被访问,而不需要经过Controller的处理。

  7. templates/ 这是Spring Boot的模板文件夹,用于存放应用程序的模板文件。可以在模板文件中使用Thymeleaf、Freemarker等模板引擎来生成动态的HTML页面。模板文件放在templates文件夹中,可以通过Controller来渲染并返回给客户端。

  8. META-INF/ 这是Spring Boot的元数据文件夹,用于存放应用程序的元数据文件。可以将一些配置文件、属性文件等放在META-INF文件夹中,这些文件可以被其他组件、框架等使用。

  9. application.properties文件中的属性 Spring Boot的application.properties文件中有许多属性可以进行配置,这里只列举一些常用的属性:

  • server.port:指定应用程序的端口号。
  • server.servlet.context-path:指定应用程序的上下文路径。
  • spring.datasource.url:指定数据库的连接URL。
  • spring.datasource.username:指定数据库的用户名。
  • spring.datasource.password:指定数据库的密码。
  • spring.jpa.show-sql:指定是否在控制台显示SQL语句。
  • spring.jpa.hibernate.ddl-auto:指定应用程序启动时是否自动创建数据库表。
  • spring.jpa.properties.hibernate.dialect:指定数据库方言。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值