JAVA系统中Spring Boot 应用程序的配置文件:application.yml

backendsrcmain esourcesapplication.yml 是一个配置文件,用于定义 Spring Boot 应用程序的各种配置属性。这个文件通常包含数据库连接、服务器设置、日志配置、安全设置以及其他应用程序级别的配置。

文件路径
复制代码
backendsrcmain
esourcesapplication.yml
文件内容

以下是一个典型的 application.yml 文件的示例:

复制代码
server:
  port: 8080
  servlet:
    context-path: /erp

spring:
  application:
    name: mechanical-erp-backend
  datasource:
    url: jdbc:mysql://localhost:3306/mechanical_erp?useSSL=false&serverTimezone=UTC
    username: root
    password: root
    driver-class-name: com.mysql.cj.jdbc.Driver
  jpa:
    hibernate:
      ddl-auto: update
    show-sql: true
    properties:
      hibernate:
        dialect: org.hibernate.dialect.MySQL5InnoDBDialect
        format_sql: true
  security:
    user:
      name: admin
      password: admin123

logging:
  level:
    root: INFO
    com.mechanical.erp: DEBUG

management:
  endpoints:
    web:
      exposure:
        include: "*"

security:
  oauth2:
    resourceserver:
      jwt:
        issuer-uri: https://your-auth-server.com/oauth/token

# 其他自定义配置
custom:
  app:
    feature-flag:
      new-ui: true
    timeout:
      default: 30s
解释
1. Server 配置
复制代码
server:
  port: 8080
  servlet:
    context-path: /erp
  • port: 指定应用程序监听的端口号。
  • context-path: 指定应用程序的上下文路径。
2. Spring 配置
复制代码
spring:
  application:
    name: mechanical-erp-backend
  datasource:
    url: jdbc:mysql://localhost:3306/mechanical_erp?useSSL=false&serverTimezone=UTC
    username: root
    password: root
    driver-class-name: com.mysql.cj.jdbc.Driver
  jpa:
    hibernate:
      ddl-auto: update
    show-sql: true
    properties:
      hibernate:
        dialect: org.hibernate.dialect.MySQL5InnoDBDialect
        format_sql: true
  security:
    user:
      name: admin
      password: admin123
  • application.name: 指定应用程序的名称。
  • datasource: 数据库连接配置,包括 URL、用户名、密码和驱动类名。
  • jpa :
    • hibernate.ddl-auto : 指定 Hibernate 如何自动处理数据库模式(例如 update, create, create-drop)。
    • show-sql: 是否在控制台显示 SQL 语句。
    • properties.hibernate.dialect: 指定使用的 Hibernate 方言。
    • properties.hibernate.format_sql: 是否格式化 SQL 语句。
  • security.user: 默认用户的安全配置,包括用户名和密码。
3. Logging 配置
复制代码
logging:
  level:
    root: INFO
    com.mechanical.erp: DEBUG
  • root : 设置根日志级别为 INFO
  • com.mechanical.erp : 设置特定包的日志级别为 DEBUG
4. Management 配置
复制代码
management:
  endpoints:
    web:
      exposure:
        include: "*"
  • endpoints.web.exposure.include: 暴露所有管理端点。
5. Security 配置
复制代码
security:
  oauth2:
    resourceserver:
      jwt:
        issuer-uri: https://your-auth-server.com/oauth/token
  • oauth2.resourceserver.jwt.issuer-uri: 指定 JWT 发行者的 URI。
6. 自定义配置
复制代码
custom:
  app:
    feature-flag:
      new-ui: true
    timeout:
      default: 30s
  • custom.app.feature-flag.new-ui: 自定义功能标志,启用新 UI。
  • custom.app.timeout.default: 自定义默认超时时间。
使用示例

以下是一些常见的配置项及其用途:

数据库连接配置
复制代码
spring:
  datasource:
    url: jdbc:mysql://localhost:3306/mechanical_erp?useSSL=false&serverTimezone=UTC
    username: root
    password: root
    driver-class-name: com.mysql.cj.jdbc.Driver
  • url: 数据库连接 URL。
  • username: 数据库用户名。
  • password: 数据库密码。
  • driver-class-name: JDBC 驱动类名。
JPA 配置
复制代码
spring:
  jpa:
    hibernate:
      ddl-auto: update
    show-sql: true
    properties:
      hibernate:
        dialect: org.hibernate.dialect.MySQL5InnoDBDialect
        format_sql: true
  • ddl-auto: 控制 Hibernate 如何处理数据库模式。
  • show-sql: 是否在控制台显示 SQL 语句。
  • dialect: 指定使用的 Hibernate 方言。
  • format_sql: 是否格式化 SQL 语句。
日志配置
复制代码
logging:
  level:
    root: INFO
    com.mechanical.erp: DEBUG
  • level.root: 设置根日志级别。
  • level.com.mechanical.erp: 设置特定包的日志级别。
管理端点配置
复制代码
management:
  endpoints:
    web:
      exposure:
        include: "*"
  • include: 暴露所有管理端点。
总结
  • application.yml (配置文件) :
    • 目的: 定义 Spring Boot 应用程序的各种配置属性。
    • 内容: 包含服务器配置、Spring 配置、日志配置、安全配置和其他应用程序级别的配置。
    • 作用: 用于配置应用程序的行为和环境,确保应用程序能够正确启动和运行。

确保这个文件中的配置正确无误,并且符合项目的整体需求。

相关推荐
侠客行031714 小时前
Mybatis连接池实现及池化模式
java·mybatis·源码阅读
蛇皮划水怪14 小时前
深入浅出LangChain4J
java·langchain·llm
灰子学技术16 小时前
go response.Body.close()导致连接异常处理
开发语言·后端·golang
老毛肚16 小时前
MyBatis体系结构与工作原理 上篇
java·mybatis
风流倜傥唐伯虎16 小时前
Spring Boot Jar包生产级启停脚本
java·运维·spring boot
二十雨辰16 小时前
[python]-AI大模型
开发语言·人工智能·python
Yvonne爱编码16 小时前
JAVA数据结构 DAY6-栈和队列
java·开发语言·数据结构·python
Re.不晚16 小时前
JAVA进阶之路——无奖问答挑战1
java·开发语言
你这个代码我看不懂17 小时前
@ConditionalOnProperty不直接使用松绑定规则
java·开发语言
pas13617 小时前
41-parse的实现原理&有限状态机
开发语言·前端·javascript