最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

SpringBoot配置文件中常用配置屬性詳解(application.properties/application.yml)

 更新時(shí)間:2025年07月28日 08:53:28   作者:超級(jí)小忍  
Spring Boot 的一大優(yōu)勢(shì)就是通過簡(jiǎn)單的配置文件即可快速定制應(yīng)用行為,而無需編寫大量 XML 配置或 Java 代碼,下面我們就來看看application.properties和application.yml作為核心配置文件的常見屬性吧

前言

Spring Boot 的一大優(yōu)勢(shì)就是通過簡(jiǎn)單的配置文件即可快速定制應(yīng)用行為,而無需編寫大量 XML 配置或 Java 代碼。Spring Boot 使用 application.propertiesapplication.yml 作為核心配置文件,支持豐富的配置屬性。

本文將詳細(xì)介紹 Spring Boot 常用的配置屬性,包括:

  • 服務(wù)器配置
  • 數(shù)據(jù)源配置
  • JPA / Hibernate 配置
  • 日志配置
  • Thymeleaf / 模板引擎配置
  • 安全配置(Spring Security)
  • 緩存配置
  • 任務(wù)調(diào)度配置
  • 國(guó)際化配置
  • 其他常用配置

1. 服務(wù)器相關(guān)配置(Server Properties)

控制嵌入式服務(wù)器(如 Tomcat、Jetty)的行為。

application.properties 示例

server.port=8080
server.servlet.context-path=/api
server.tomcat.max-connections=10000
server.tomcat.max-http-form-post-size=20MB
server.error.whitelabel.enabled=false

application.yml 示例

server:
  port: 8080
  servlet:
    context-path: /api
  tomcat:
    max-connections: 10000
    max-http-form-post-size: 20MB
  error:
    whitelabel:
      enabled: false

常見配置說明

屬性名說明
server.port應(yīng)用監(jiān)聽的端口,默認(rèn) 8080
server.servlet.context-path應(yīng)用的上下文路徑,默認(rèn)為空
server.tomcat.max-connectionsTomcat 最大連接數(shù)
server.tomcat.max-http-form-post-sizeHTTP 表單 POST 最大大小
server.error.whitelabel.enabled是否啟用默認(rèn)錯(cuò)誤頁面(關(guān)閉后返回 JSON 錯(cuò)誤信息)

2. 數(shù)據(jù)源配置(DataSource Properties)

用于配置數(shù)據(jù)庫(kù)連接池,常見如 HikariCP、Tomcat JDBC、DBCP2 等。

application.properties 示例

spring.datasource.url=jdbc:mysql://localhost:3306/mydb?useSSL=false&serverTimezone=UTC
spring.datasource.username=root
spring.datasource.password=123456
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.hikari.maximum-pool-size=10
spring.datasource.hikari.idle-timeout=30000

application.yml 示例

spring:
  datasource:
    url: jdbc:mysql://localhost:3306/mydb?useSSL=false&serverTimezone=UTC
    username: root
    password: 123456
    driver-class-name: com.mysql.cj.jdbc.Driver
    hikari:
      maximum-pool-size: 10
      idle-timeout: 30000

常見配置說明

屬性名說明
spring.datasource.url數(shù)據(jù)庫(kù)連接 URL
spring.datasource.username數(shù)據(jù)庫(kù)用戶名
spring.datasource.password數(shù)據(jù)庫(kù)密碼
spring.datasource.driver-class-name數(shù)據(jù)庫(kù)驅(qū)動(dòng)類名
spring.datasource.hikari.*HikariCP 特定配置(如最大連接數(shù)、空閑超時(shí))

3. JPA / Hibernate 配置(Spring Data JPA)

用于配置 JPA 和 Hibernate 的行為。

application.properties 示例

spring.jpa.hibernate.ddl-auto=update
spring.jpa.show-sql=true
spring.jpa.properties.hibernate.format_sql=true
spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.MySQL8Dialect
spring.jpa.open-in-view=false

application.yml 示例

spring:
  jpa:
    hibernate:
      ddl-auto: update
    show-sql: true
    properties:
      hibernate:
        format_sql: true
        dialect: org.hibernate.dialect.MySQL8Dialect
    open-in-view: false

常見配置說明

屬性名說明
spring.jpa.hibernate.ddl-auto自動(dòng)建表策略(create、update、validate、none)
spring.jpa.show-sql是否打印 SQL
spring.jpa.properties.hibernate.format_sql格式化 SQL
spring.jpa.properties.hibernate.dialectHibernate 方言
spring.jpa.open-in-view是否啟用 OpenEntityManagerInViewFilter(不推薦開啟)

4. 日志配置(Logging)

Spring Boot 支持 Logback、Log4j2、Java Util Logging 等日志框架。

application.properties 示例

logging.level.root=INFO
logging.level.com.example.demo=DEBUG
logging.file.name=logs/app.log
logging.file.max-size=10MB
logging.pattern.console=%d{yyyy-MM-dd HH:mm:ss} - %msg%n

application.yml 示例

logging:
  level:
    root: INFO
    com.example.demo: DEBUG
  file:
    name: logs/app.log
    max-size: 10MB
  pattern:
    console: "%d{yyyy-MM-dd HH:mm:ss} - %msg%n"

常見配置說明

屬性名說明
logging.level.*設(shè)置不同包的日志級(jí)別
logging.file.name日志輸出文件路徑
logging.file.max-size日志文件最大大小
logging.pattern.console控制臺(tái)日志輸出格式

5. 模板引擎配置(Thymeleaf)

如果你使用 Thymeleaf 模板引擎,可以配置緩存、模板路徑等。

application.properties 示例

spring.thymeleaf.cache=false
spring.thymeleaf.prefix=classpath:/templates/
spring.thymeleaf.suffix=.html
spring.thymeleaf.mode=HTML
spring.thymeleaf.encoding=UTF-8

application.yml 示例

spring:
  thymeleaf:
    cache: false
    prefix: classpath:/templates/
    suffix: .html
    mode: HTML
    encoding: UTF-8

6. 安全配置(Spring Security)

用于配置 Spring Security 的默認(rèn)行為。

application.properties 示例

spring.security.user.name=admin
spring.security.user.password=123456
spring.security.user.roles=USER,ADMIN

application.yml 示例

spring:
  security:
    user:
      name: admin
      password: 123456
      roles:
        - USER
        - ADMIN

注意:實(shí)際項(xiàng)目中建議使用數(shù)據(jù)庫(kù)認(rèn)證,而不是配置文件方式。

7. 緩存配置(Cache)

Spring Boot 支持多種緩存實(shí)現(xiàn),如 Caffeine、EhCache、Redis 等。

application.properties 示例

spring.cache.type=simple
spring.cache.cache-names=myCache
spring.cache.simple.initial-capacity=100
spring.cache.simple.max-entries=500

application.yml 示例

spring:
  cache:
    type: simple
    cache-names: myCache
    simple:
      initial-capacity: 100
      max-entries: 500

8. 任務(wù)調(diào)度配置(Scheduling)

啟用定時(shí)任務(wù)并配置線程池。

application.properties 示例

spring.task.scheduling.pool.size=5

application.yml 示例

spring:
  task:
    scheduling:
      pool:
        size: 5

在代碼中使用 @Scheduled 注解即可定義定時(shí)任務(wù)。

9. 國(guó)際化配置(i18n)

配置消息源和默認(rèn)語言。

application.properties 示例

spring.messages.basename=messages
spring.messages.encoding=UTF-8
spring.locale=zh

application.yml 示例

spring:
  messages:
    basename: messages
    encoding: UTF-8
  locale: zh

10. 其他常用配置

10.1 文件上傳配置

spring.servlet.multipart.max-file-size=10MB
spring.servlet.multipart.max-request-size=10MB
spring:
  servlet:
    multipart:
      max-file-size: 10MB
      max-request-size: 10MB

10.2 WebMvc 配置

spring.mvc.async.request-timeout=0
spring.mvc.format.date-time=yyyy-MM-dd HH:mm:ss
spring:
  mvc:
    async:
      request-timeout: 0
    format:
      date-time: yyyy-MM-dd HH:mm:ss

10.3 Actuator 配置

management.endpoints.web.exposure.include=*
management.endpoint.health.show-details=always
management:
  endpoints:
    web:
      exposure:
        include: "*"
  endpoint:
    health:
      show-details: always

總結(jié)

Spring Boot 的配置文件非常靈活,通過 application.propertiesapplication.yml 可以快速配置服務(wù)器、數(shù)據(jù)庫(kù)、日志、緩存、安全等多個(gè)模塊的行為。使用合適的配置,可以顯著提升開發(fā)效率和系統(tǒng)穩(wěn)定性。

建議:在開發(fā)階段啟用更多調(diào)試信息(如 SQL 打?。?,在生產(chǎn)環(huán)境中關(guān)閉調(diào)試輸出并啟用緩存、日志分割等優(yōu)化配置。

到此這篇關(guān)于SpringBoot配置文件中常用配置屬性詳解(application.properties/application.yml)的文章就介紹到這了,更多相關(guān)SpringBoot配置文件配置屬性內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Java實(shí)現(xiàn)小型圖書館管理系統(tǒng)

    Java實(shí)現(xiàn)小型圖書館管理系統(tǒng)

    這篇文章主要為大家詳細(xì)介紹了Java實(shí)現(xiàn)小型圖書館管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-11-11
  • JAVA虛擬機(jī)中 -D, -X, -XX ,-server參數(shù)使用

    JAVA虛擬機(jī)中 -D, -X, -XX ,-server參數(shù)使用

    本文主要介紹了JAVA虛擬機(jī)中 -D, -X, -XX ,-server參數(shù)使用,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2025-03-03
  • Java實(shí)現(xiàn)定時(shí)任務(wù)最簡(jiǎn)單的3種方法

    Java實(shí)現(xiàn)定時(shí)任務(wù)最簡(jiǎn)單的3種方法

    幾乎在所有的項(xiàng)目中,定時(shí)任務(wù)的使用都是不可或缺的,如果使用不當(dāng)甚至?xí)斐少Y損,下面這篇文章主要給大家介紹了關(guān)于Java實(shí)現(xiàn)定時(shí)任務(wù)最簡(jiǎn)單的3種方法,本文通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-06-06
  • javaWeb實(shí)現(xiàn)學(xué)生信息管理系統(tǒng)

    javaWeb實(shí)現(xiàn)學(xué)生信息管理系統(tǒng)

    這篇文章主要為大家詳細(xì)介紹了javaWeb實(shí)現(xiàn)學(xué)生信息管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-01-01
  • 關(guān)于Spring?@Transactional事務(wù)傳播機(jī)制詳解

    關(guān)于Spring?@Transactional事務(wù)傳播機(jī)制詳解

    我們?nèi)粘9ぷ髦袠O少使用事務(wù)傳播級(jí)別,單純只是使用事務(wù)和rollbackfor拋出異常來解決事務(wù)問題,但其實(shí)我們很多時(shí)候使用的是不正確的,或者說會(huì)造成事務(wù)粒度過大,本文詳解一下事務(wù)傳播級(jí)別,也讓自己更好地處理事務(wù)問題,需要的朋友可以參考下
    2023-08-08
  • 詳解spring boot實(shí)現(xiàn)websocket

    詳解spring boot實(shí)現(xiàn)websocket

    這篇文章主要介紹了詳解spring boot實(shí)現(xiàn)websocket,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-06-06
  • 基于Java+OpenClaw實(shí)現(xiàn)企業(yè)級(jí)智能體自動(dòng)化

    基于Java+OpenClaw實(shí)現(xiàn)企業(yè)級(jí)智能體自動(dòng)化

    本文介紹了OpenClaw開源框架,它為Java程序員提供了一個(gè)無需學(xué)習(xí)Python便可調(diào)用AI智能體的API網(wǎng)關(guān),文章詳細(xì)講解了OpenClaw的核心功能、架構(gòu)設(shè)計(jì)、環(huán)境準(zhǔn)備、Java集成實(shí)戰(zhàn)及企業(yè)級(jí)落地的關(guān)鍵細(xì)節(jié),需要的朋友可以參考下
    2026-04-04
  • java并發(fā)編程專題(八)----(JUC)實(shí)例講解CountDownLatch

    java并發(fā)編程專題(八)----(JUC)實(shí)例講解CountDownLatch

    這篇文章主要介紹了java CountDownLatch的相關(guān)資料,文中示例代碼非常詳細(xì),幫助大家理解和學(xué)習(xí),感興趣的朋友可以了解下
    2020-07-07
  • Java Arrays.fill()的具體使用

    Java Arrays.fill()的具體使用

    本文主要介紹了Java Arrays.fill()的具體使用,更好地理解Arrays.fill()方法的用法以及在實(shí)際應(yīng)用中如何使用它,感興趣的可以了解一下
    2023-09-09
  • Java中將String類型依照某個(gè)字符分割成數(shù)組的方法

    Java中將String類型依照某個(gè)字符分割成數(shù)組的方法

    下面小編就為大家分享一篇Java中將String類型依照某個(gè)字符分割成數(shù)組的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2018-03-03

最新評(píng)論

四会市| 上杭县| 武鸣县| 阿拉尔市| 苍梧县| 应用必备| 汝阳县| 都昌县| 英德市| 随州市| 瑞金市| 霍山县| 乐业县| 潢川县| 灵武市| 讷河市| 托克托县| 兖州市| 永昌县| 昌黎县| 奈曼旗| 健康| 澳门| 策勒县| 甘南县| 武山县| 定日县| 梁河县| 南丹县| 沈阳市| 西和县| 德昌县| 来安县| 芮城县| 阆中市| 乐至县| 青阳县| 壶关县| 巴楚县| 乐安县| 遵义县|