恒美微站 Logo 恒美微站
  • 首页
  • 关于我们
  • 建站服务
  • 主题模板
  • 案例展示
  • 资讯中心
  • 联系我们

SpringBoot配置文件详解

  • 首页
  • 资讯中心
  • /
  • SpringBoot配置文件详解

相关资讯

AI微短剧与魔改内容的审核红线:生成痕迹识别与实操避坑指南 2026/10/18 5:36:26
VS Code多文件C/C++编译:用脚本替代Makefile的实战指南 2026/10/18 5:36:26
大模型编程新利器 Kiro 实测:Specs 与 Hooks 如何吊打 Cursor 工作流 2026/10/18 5:31:26

最新资讯

提示链设计实战:从执行流拆分到稳定智能体
RLAnything实战:强化学习统一GUI、代码与游戏Agent开发
freeTTS实战:Java语音包实现文本转语音、WAV输出与并发安全
SAP HANA SQL参考指南实战:从语法查阅到性能优化的高效用法
SpringBoot+Vue前后端分离专辑鉴赏网站:从毕设选题到答辩全流程实战
# Chiplet GPU 的 CP 建模:gem5 AMDGPU 分析、MI250X 驱动详解与建模路径

今日推荐

基于GMM的语音识别系统原理与MATLAB实现详解
数字图像处理入门:反白、灰度化、调色板修改与导出txt实践
机器人大脑技术盘点:具身智能的感知、决策与数据闭环

本周热门

基于GMM的语音识别系统原理与MATLAB实现详解
数字图像处理入门:反白、灰度化、调色板修改与导出txt实践
机器人大脑技术盘点:具身智能的感知、决策与数据闭环

本月精选

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证
2026 大模型集体涨价:用 Python 做企业 Token 成本测算与选型避坑(附配置)

SpringBoot配置文件详解

发布时间:2026/10/18 5:36:26
SpringBoot配置文件详解 本文从配置文件的作用、快速入手到properties与yml的语法、读取方式最后通过一个验证码案例进行综合实践目录一、配置文件的作用二、配置文件快速入手三、配置文件的格式四、properties配置文件说明4.1properties基本语法4.2读取配置文件4.3properties缺点分析五、yml配置文件5.1yml基本语法5.2yml进阶使用5.3yml优缺点一、配置文件的作用配置文件主要是为了解决硬编码带来的问题把可能会发生改变的信息放在一个集中的地方当我们启动某个程序时应用程序从配置文件中读取数据并加载运行。SpringBoot支持并定义了配置文件的格式也在另一个层面达到了规范其他框架集成到SpringleBoot的目的。很多项目或者框架的配置信息也放在配置文件中比如项目的启动端口、数据库的连接信息用户名、密码等设置、日志等项目的启动端口SpringBoot内置了Tomcat服务器默认端口号是8080但是用户电脑上8080端口号有可能就被其他应用程序占用了所以SpringBoot需要支持让用户自定义端口号。数据库连接信息为了更方便地简单地访问数据库出现了一些持久层框架其实就是对JDBC进行了更胜层次地封装让用户通过简单几行代码可完成数据库的访问。但是不同的应用程序访问的数据库不同这些持久层框架就需要支持用户可以自定义配置数据库的连接信息。二、配置文件快速入手修改application.properties文件重新运行程序观察日志显示Tomcat启动端口号为9090。三、配置文件的格式SpringBoot配置文件有以下三种方式application.properties、application.yml、application.yamlyml为yaml的简写本文只讲yml文件的使用当程序启动时SpringBoot会自动从classpath路径找到并加载application.properties和application.yml文件。注意理论上.properties和.yml可以并存在于一个项目中当.properties和.yml并存时两个配置都会加载。如果配置文件内容有所冲突则以.properties为主也就是.properties优先级高。四、properties配置文件说明4.1properties基本语法properties是以键值对的形式配置的key和value之间以连接# 配置项目端口号server.port8080# 配置数据库连接信息spring.datasource.urljdbc:mysql://127.0.0.1:3306/testdb?characterEncodingutf8useSSLfalsespring.datasource.usernamerootspring.datasource.passwordroot4.2读取配置文件如果在项目中想要主动地读取配置文件中的内容可以使用Value注解来实现。Value注解使用${ }的格式读取如下代码所示import org.springframework.beans.factory.annotation.Value; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; RestController public class PropertiesController { Value(${mykey.key1}) private String key1; RequestMapping(/key) public String key() { return 读取到值 key1; } }4.3properties缺点分析properties配置是以keyvalue的形式配置的spring.datasource.urljdbc:mysql://127.0.0.1:3306/testdb?characterEncodingutf8useSSLfalsespring.datasource.usernamerootspring.datasource.passwordrootproperties配置文件中有很多冗余的信息相比之下yml配置文件就简单点五、yml配置文件5.1yml基本语法yml是树形结构的配置文件它的基础语法是key value。key和value之间使用英文冒号空格的方式组成空格不可省略# 正确的配置方式冒号后面必须要有空格key1: java# 错误的配置方式key2:java2使用yml连接数据库spring:datasource:url: jdbc:mysql://127.0.0.1:3306/dbname?characterEncodingutf8useSSLfalseusername: rootpassword: root5.2yml进阶使用yml配置不同数据类型及null# 字符串string.value: Hello# 布尔值true 或 falseboolean.value: trueboolean.value1: false# 整数int.value: 10# 浮点数float.value: 3.14159# Null~代表 nullnull.value: ~# 空字符串empty.value: yml配置读取string:hello: biteRestController public class ReadYml { Value(${string.hello}) private String hello; RequestMapping(/ymlKey) public String key() { return 读取到值: hello; } }配置对象student:id: 1name: Javaage: 18student: {id: 1, name: Java, age: 18}此时需要使用ConfigurationProperties来读取import lombok.Data; import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.stereotype.Component; ConfigurationProperties(prefix student) Component Data public class Student { private int id; private String name; private int age; }RestController public class StudentController { Autowired private Student student; RequestMapping(/readStudent) public String readStudent() { return student.toString(); } }5.3yml优缺点优点可读性高写法简单易于理解支持更多的数据类型可以简单表达对象、数组、List、Map等数据形态支持更多的编程语言缺点不适合写复杂的配置文件。比如prorperties格式keycloak.realmdemokeycloak.resourcefm-cache-cloudkeycloak.credentials.secretd4589683-0ce7-4982-bcd3keycloak.security[0].authRoles[0]userkeycloak.security[0].collections[0].namessologinurlkeycloak.security[0].collections[0].patterns[0]/login/*转换成ymlkeycloak:realm: demoresource: fm-cache-cloudcredentials:secret: d4589683-0ce7-4982-bcd3security:- authRoles:- usercollections:- name: ssologinurlpatterns:- /login/*转换过程比较花费精力可读性会变差

关于恒美微站

恒美微站专注于为个体商户、工作室提供极简自助建站服务,让每个人都能轻松拥有专业网站。

快速链接

  • 关于我们
  • 建站服务
  • 主题模板
  • 案例展示
  • 资讯中心

服务项目

  • 可视化建站
  • 拖拽编辑
  • 主题定制
  • SEO 优化
  • 网站托管

联系方式

  • 📍 地址:北京市朝阳区建国路 88 号
  • 📞 电话:400-888-8888
  • ✉️ 邮箱:info@hmyw.cn
  • 🕐 时间:周一至周日 9:00-18:00

© 2024 恒美微站 hmyw.cn 版权所有 | 京 ICP 备 12345678 号