Spring Boot 通用配置属性 - 核心属性

本贴最后更新于 1610 天前,其中的信息可能已经时移俗易

可以在 application.properties 文件内部 application.yml,文件内部或命令行开关中指定各种属性。本附录提供了常见的 Spring Boot 属性列表以及对使用它们的基础类的引用。

1.核心属性

默认值 描述
debug false 启用调试日志。
info.* 要添加到信息端点的任意属性。
logging.config 日志记录配置文件的位置。例如,用于 logback 的 classpath:logback.xml
logging.exception-conversion-word %wEx 记录异常时使用的转换字。
logging.file.clean-history-on-start false 是否在启动时清除存档日志文件。仅默认登录设置支持。
logging.file.max-history 7 存档日志文件的最大保留天数。仅默认登录设置支持。
logging.file.max-size 10MB 最大日志文件大小。仅默认登录设置支持。
logging.file.name 日志文件名(例如,“ myapp.log”)。名称可以是确切位置,也可以是相对于当前目录的位置。
logging.file.path 日志文件的位置。例如,/ var / log
logging.file.total-size-cap 0B 要保留的日志备份的总大小。仅默认登录设置支持。
logging.group.* 日志组可快速快速地同时更改多个记录器。例如,logging.group.db = org.hibernate,org.springframework.jdbc
logging.level.* 日志级别严重性映射。例如,logging.level.org.springframework = DEBUG
logging.pattern.console %clr(%d{{LOG_DATEFORMAT_PATTERN:-yyyy-MM-dd HH:mm:ss.SSS}}){faint} %clr({LOG_LEVEL_PATTERN:-%5p}) %clr({PID:- }){magenta} %clr(---){faint} %clr([%15.15t]){faint} %clr(%-40.40logger{39}){cyan} %clr(:){faint} %m%n{LOG_EXCEPTION_CONVERSION_WORD:-%wEx} Appender 模式,用于输出到控制台。仅默认的 Logback 设置受支持。
logging.pattern.dateformat yyyy-MM-dd HH:mm:ss.SSS 记录日期格式的附加模式。仅默认的 Logback 设置受支持。
logging.pattern.file %d{{LOG_DATEFORMAT_PATTERN:-yyyy-MM-dd HH:mm:ss.SSS}} {LOG_LEVEL_PATTERN:-%5p} {PID:- } --- [%t] %-40.40logger{39} : %m%n{LOG_EXCEPTION_CONVERSION_WORD:-%wEx} 用于输出到文件的附加模式。仅默认的 Logback 设置受支持。
logging.pattern.level %5p 日志级别的附加模式。仅默认的 Logback 设置受支持。
logging.pattern.rolling-file-name ${LOG_FILE}.%d{yyyy-MM-dd}.%i.gz 过渡日志文件名的模式。仅默认的 Logback 设置受支持。
logging.register-shutdown-hook false 初始化日志系统时,注册一个关闭挂钩。
spring.aop.auto true 添加 @EnableAspectJAutoProxy。
spring.aop.proxy-target-class true 与基于标准 Java 接口的代理(false)相反,是否要创建基于子类的代理(CGLIB)(true)。
spring.application.admin.enabled false 是否为应用程序启用管理功能。
spring.application.admin.jmx-name org.springframework.boot:type=Admin,name=SpringApplication 应用程序管理员 MBean 的 JMX 名称。
spring.application.name 应用名称。
spring.autoconfigure.exclude 要排除的自动配置类。
spring.banner.charset UTF-8 标语文件编码。
spring.banner.image.bitdepth 4 用于 ANSI 颜色的位深度。支持的值为 4(16 色)或 8(256 色)。
spring.banner.image.height 标语图像的高度(以字符为单位)(默认基于图像高度)。
spring.banner.image.invert false 是否应针对黑暗的终端主题反转图像。
spring.banner.image.location classpath:banner.gif 标语图片文件的位置(也可以使用 jpg 或 png)。
spring.banner.image.margin 2 左手图像边距(以字符为单位)。
spring.banner.image.pixelmode TEXT 渲染图像时使用的像素模式。
spring.banner.image.width 76 横幅图像的宽度(以字符为单位)。
spring.banner.location classpath:banner.txt 标语文字资源位置。
spring.beaninfo.ignore true 是否跳过对 BeanInfo 类的搜索。
spring.config.additional-location 除了默认值以外,还使用了配置文件位置。
spring.config.location 替换默认设置的配置文件位置。
spring.config.name application 配置文件名。
spring.info.build.encoding UTF-8 文件编码。
spring.info.build.location classpath:META-INF/build-info.properties 生成的 build-info.properties 文件的位置。
spring.info.git.encoding UTF-8 文件编码。
spring.info.git.location classpath:git.properties
spring.jmx.default-domain JMX 域名。
spring.jmx.enabled false 将管理 bean 公开到 JMX 域。
spring.jmx.server mbeanServer MBeanServer Bean 名称。
spring.jmx.unique-names false 是否应确保唯一的运行时对象名称。
spring.main.allow-bean-definition-overriding false 是否允许通过使用与现有定义同名的定义来覆盖 Bean 定义。
spring.main.banner-mode console 应用程序运行时用于显示横幅的模式。
spring.main.lazy-initialization false 是否应延迟执行初始化。
spring.main.register-shutdown-hook true 应用程序是否应该注册一个关闭挂钩。
spring.main.sources 包含在 ApplicationContext 中的源(类名,包名或 XML 资源位置)。
spring.main.web-application-type 标记以显式请求特定类型的 Web 应用程序。如果未设置,则基于类路径自动检测。
spring.mandatory-file-encoding 应用程序必须使用的预期字符编码。
spring.messages.always-use-message-format false 是否始终应用 MessageFormat 规则,甚至分析不带参数的消息。
spring.messages.basename messages 基名的逗号分隔列表(本质上是完全合格的类路径位置),每个都遵循 ResourceBundle 约定,并轻松支持基于斜杠的位置。如果它不包含包限定符(例如“ org.mypackage”),它将从类路径根目录中解析。
spring.messages.cache-duration 加载的资源束文件缓存持续时间。如果未设置,则捆绑包将永久缓存。如果未指定持续时间后缀,则将使用秒。
spring.messages.encoding UTF-8 消息编码。
spring.messages.fallback-to-system-locale true 如果未找到特定语言环境的文件,是否退回到系统语言环境。如果关闭此选项,则唯一的后备选项将是默认文件(例如,基本名称“ messages”的“ messages.properties”)。
spring.messages.use-code-as-default-message false 是否使用消息代码作为默认消息,而不是引发“ NoSuchMessageException”。仅在开发期间推荐。
spring.output.ansi.enabled detect 配置 ANSI 输出。
spring.pid.fail-on-write-error 如果使用 ApplicationPidFileWriter 失败,但无法写入 PID 文件。
spring.pid.file 要写入的 PID 文件的位置(如果使用了 ApplicationPidFileWriter)。
spring.profiles 用逗号分隔的概要文件表达式列表,至少要匹配一个概要文件表达式才能包含该文档。
spring.profiles.active 以逗号分隔的活动配置文件列表。可以被命令行开关覆盖。
spring.profiles.include 无条件激活指定的逗号分隔的配置文件列表(如果使用 YAML,则激活配置文件列表)。
spring.quartz.auto-startup true 初始化后是否自动启动调度程序。
spring.quartz.jdbc.comment-prefix #, -- SQL 初始化脚本中单行注释的前缀。
spring.quartz.jdbc.initialize-schema embedded 数据库模式初始化模式。
spring.quartz.jdbc.schema classpath:org/quartz/impl/jdbcjobstore/tables_@@platform@@.sql
spring.quartz.job-store-type memory quartz 作业存储类型。
spring.quartz.overwrite-existing-jobs false 配置的作业是否应覆盖现有的作业定义。
spring.quartz.properties.* Quartz Scheduler 的其他属性。
spring.quartz.scheduler-name quartzScheduler 调度程序的名称。
spring.quartz.startup-delay 0s 初始化完成后启动调度程序的延迟时间。如果在整个应用程序启动之前不运行任何作业,则设置此属性很有意义。
spring.quartz.wait-for-jobs-to-complete-on-shutdown false 是否等待正在关闭的正在运行的作业。
spring.reactor.debug-agent.enabled true 存在反应器工具时是否应启用反应器调试代理。
spring.task.execution.pool.allow-core-thread-timeout true 是否允许核心线程超时。这样可以动态增加和缩小池。
spring.task.execution.pool.core-size 8 核心线程数。
spring.task.execution.pool.keep-alive 60s 线程在终止之前可能保持空闲的时间限制。
spring.task.execution.pool.max-size 允许的最大线程数。如果任务填满队列,则池可以扩展到该大小以容纳负载。忽略队列是否无界。
spring.task.execution.pool.queue-capacity 队列容量。无限制的容量不会增加池,因此会忽略“最大大小”属性。
spring.task.execution.shutdown.await-termination false 执行程序是否应该等待计划的任务在关闭时完成。
spring.task.execution.shutdown.await-termination-period 执行者应该等待剩余任务完成的最长时间。
spring.task.execution.thread-name-prefix task- 用于新创建线程名称的前缀。
spring.task.scheduling.pool.size 1 允许的最大线程数。
spring.task.scheduling.shutdown.await-termination false 执行程序是否应该等待计划的任务在关闭时完成。
spring.task.scheduling.shutdown.await-termination-period 执行者应该等待剩余任务完成的最长时间。
spring.task.scheduling.thread-name-prefix scheduling- 用于新创建线程名称的前缀。
trace false 启用跟踪日志。
  • Spring

    Spring 是一个开源框架,是于 2003 年兴起的一个轻量级的 Java 开发框架,由 Rod Johnson 在其著作《Expert One-On-One J2EE Development and Design》中阐述的部分理念和原型衍生而来。它是为了解决企业应用开发的复杂性而创建的。框架的主要优势之一就是其分层架构,分层架构允许使用者选择使用哪一个组件,同时为 JavaEE 应用程序开发提供集成的框架。

    938 引用 • 1456 回帖 • 163 关注

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...

推荐标签 标签

  • Mac

    Mac 是苹果公司自 1984 年起以“Macintosh”开始开发的个人消费型计算机,如:iMac、Mac mini、Macbook Air、Macbook Pro、Macbook、Mac Pro 等计算机。

    164 引用 • 594 回帖 • 1 关注
  • 微信

    腾讯公司 2011 年 1 月 21 日推出的一款手机通讯软件。用户可以通过摇一摇、搜索号码、扫描二维码等添加好友和关注公众平台,同时可以将自己看到的精彩内容分享到微信朋友圈。

    129 引用 • 791 回帖
  • SEO

    发布对别人有帮助的原创内容是最好的 SEO 方式。

    35 引用 • 200 回帖 • 15 关注
  • Telegram

    Telegram 是一个非盈利性、基于云端的即时消息服务。它提供了支持各大操作系统平台的开源的客户端,也提供了很多强大的 APIs 给开发者创建自己的客户端和机器人。

    5 引用 • 35 回帖 • 2 关注
  • Gitea

    Gitea 是一个开源社区驱动的轻量级代码托管解决方案,后端采用 Go 编写,采用 MIT 许可证。

    4 引用 • 16 回帖 • 6 关注
  • DevOps

    DevOps(Development 和 Operations 的组合词)是一组过程、方法与系统的统称,用于促进开发(应用程序/软件工程)、技术运营和质量保障(QA)部门之间的沟通、协作与整合。

    37 引用 • 24 回帖
  • 创业

    你比 99% 的人都优秀么?

    82 引用 • 1397 回帖 • 1 关注
  • Solo

    Solo 是一款小而美的开源博客系统,专为程序员设计。Solo 有着非常活跃的社区,可将文章作为帖子推送到社区,来自社区的回帖将作为博客评论进行联动(具体细节请浏览 B3log 构思 - 分布式社区网络)。

    这是一种全新的网络社区体验,让热爱记录和分享的你不再感到孤单!

    1424 引用 • 10041 回帖 • 469 关注
  • Wide

    Wide 是一款基于 Web 的 Go 语言 IDE。通过浏览器就可以进行 Go 开发,并有代码自动完成、查看表达式、编译反馈、Lint、实时结果输出等功能。

    欢迎访问我们运维的实例: https://wide.b3log.org

    30 引用 • 218 回帖 • 594 关注
  • Ngui

    Ngui 是一个 GUI 的排版显示引擎和跨平台的 GUI 应用程序开发框架,基于
    Node.js / OpenGL。目标是在此基础上开发 GUI 应用程序可拥有开发 WEB 应用般简单与速度同时兼顾 Native 应用程序的性能与体验。

    7 引用 • 9 回帖 • 339 关注
  • 区块链

    区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。所谓共识机制是区块链系统中实现不同节点之间建立信任、获取权益的数学算法 。

    91 引用 • 751 回帖 • 3 关注
  • 链书

    链书(Chainbook)是 B3log 开源社区提供的区块链纸质书交易平台,通过 B3T 实现共享激励与价值链。可将你的闲置书籍上架到链书,我们共同构建这个全新的交易平台,让闲置书籍继续发挥它的价值。

    链书社

    链书目前已经下线,也许以后还有计划重制上线。

    14 引用 • 257 回帖 • 1 关注
  • 快应用

    快应用 是基于手机硬件平台的新型应用形态;标准是由主流手机厂商组成的快应用联盟联合制定;快应用标准的诞生将在研发接口、能力接入、开发者服务等层面建设标准平台;以平台化的生态模式对个人开发者和企业开发者全品类开放。

    15 引用 • 127 回帖 • 1 关注
  • Android

    Android 是一种以 Linux 为基础的开放源码操作系统,主要使用于便携设备。2005 年由 Google 收购注资,并拉拢多家制造商组成开放手机联盟开发改良,逐渐扩展到到平板电脑及其他领域上。

    331 引用 • 315 回帖 • 83 关注
  • TensorFlow

    TensorFlow 是一个采用数据流图(data flow graphs),用于数值计算的开源软件库。节点(Nodes)在图中表示数学操作,图中的线(edges)则表示在节点间相互联系的多维数据数组,即张量(tensor)。

    20 引用 • 19 回帖
  • Kotlin

    Kotlin 是一种在 Java 虚拟机上运行的静态类型编程语言,由 JetBrains 设计开发并开源。Kotlin 可以编译成 Java 字节码,也可以编译成 JavaScript,方便在没有 JVM 的设备上运行。在 Google I/O 2017 中,Google 宣布 Kotlin 成为 Android 官方开发语言。

    19 引用 • 33 回帖 • 20 关注
  • TGIF

    Thank God It's Friday! 感谢老天,总算到星期五啦!

    284 引用 • 4481 回帖 • 651 关注
  • 书籍

    宋真宗赵恒曾经说过:“书中自有黄金屋,书中自有颜如玉。”

    76 引用 • 390 回帖 • 1 关注
  • CAP

    CAP 指的是在一个分布式系统中, Consistency(一致性)、 Availability(可用性)、Partition tolerance(分区容错性),三者不可兼得。

    11 引用 • 5 回帖 • 553 关注
  • 机器学习

    机器学习(Machine Learning)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。

    76 引用 • 37 回帖 • 1 关注
  • Git

    Git 是 Linux Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。

    204 引用 • 357 回帖 • 1 关注
  • MySQL

    MySQL 是一个关系型数据库管理系统,由瑞典 MySQL AB 公司开发,目前属于 Oracle 公司。MySQL 是最流行的关系型数据库管理系统之一。

    673 引用 • 535 回帖
  • 星云链

    星云链是一个开源公链,业内简单的将其称为区块链上的谷歌。其实它不仅仅是区块链搜索引擎,一个公链的所有功能,它基本都有,比如你可以用它来开发部署你的去中心化的 APP,你可以在上面编写智能合约,发送交易等等。3 分钟快速接入星云链 (NAS) 测试网

    3 引用 • 16 回帖 • 2 关注
  • RYMCU

    RYMCU 致力于打造一个即严谨又活泼、专业又不失有趣,为数百万人服务的开源嵌入式知识学习交流平台。

    4 引用 • 6 回帖 • 38 关注
  • Sym

    Sym 是一款用 Java 实现的现代化社区(论坛/BBS/社交网络/博客)系统平台。

    下一代的社区系统,为未来而构建

    522 引用 • 4581 回帖 • 687 关注
  • Tomcat

    Tomcat 最早是由 Sun Microsystems 开发的一个 Servlet 容器,在 1999 年被捐献给 ASF(Apache Software Foundation),隶属于 Jakarta 项目,现在已经独立为一个顶级项目。Tomcat 主要实现了 JavaEE 中的 Servlet、JSP 规范,同时也提供 HTTP 服务,是市场上非常流行的 Java Web 容器。

    163 引用 • 529 回帖
  • SpaceVim

    SpaceVim 是一个社区驱动的模块化 vim/neovim 配置集合,以模块的方式组织管理插件以
    及相关配置,为不同的语言开发量身定制了相关的开发模块,该模块提供代码自动补全,
    语法检查、格式化、调试、REPL 等特性。用户仅需载入相关语言的模块即可得到一个开箱
    即用的 Vim-IDE。

    3 引用 • 31 回帖 • 66 关注