第三节 SpringBoot项目配置及yaml文件 您所在的位置:网站首页 尚硅谷idea配置 第三节 SpringBoot项目配置及yaml文件

第三节 SpringBoot项目配置及yaml文件

2023-05-21 12:03| 来源: 网络整理| 查看: 265

第三节 SpringBoot项目配置及yaml文件 1. Spring Boot项目配置2. yaml文件3. yml和properties的比较 ​ Spring Boot项目可以通过多种方式进行配置,包括application.properties文件、application.yml文件、命令行参数、环境变量等。这些配置可以用来设置应用程序的端口号、数据库连接信息、日志级别等。

1. Spring Boot项目配置

​ application.properties 配置文件是创建项目后就自带的,如果我们要自定义属性,可以在其中直接配置,配置过程如下:

在 application.properties 中添加我们要自定义的配置;

demo.id=8888 demo.name=demo

创建实体类来映射我们配置的属性;

package com.demo.pojo; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.stereotype.Component; @Component @ConfigurationProperties(prefix = "demo") @Data @NoArgsConstructor @AllArgsConstructor public class DemoProperties { private int id; private String name; }

定义 Controller 来注入测试;

package com.demo.controller; import com.demo.pojo.demoProperties; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; @RestController @RequestMapping("/demo") public class demoPropertiesController { private static final Logger logger = LoggerFactory.getLogger(demoPropertiesController.class); @Autowired DemoProperties demoProperties; @GetMapping("/profile") public String demoProfile(){ logger.info("---------------"); logger.info(demoProperties.toString()); logger.info("---------------"); return demoProperties.toString(); } } 2. yaml文件

​ yaml是一种常用的数据序列化格式,它以可读性强、简洁明了的语法著称。在Spring Boot项目中,可以使用application.yml文件来代替application.properties文件进行配置。yaml文件使用缩进来表示层次结构,支持列表和键值对两种数据结构。

实现上文代码仅需将application.properties改为application.yml ,如下;

demo: id:8888 demo: name:demo 3. yml和properties的比较

​ 一般来说,使用 IDEA 创建一个 Spring Boot 项目时,默认都会生成一个 application.properties 的配置文件。该配置文件是用来修改 Spring Boot自动配置的默认值。下面我们简单介绍两种的区别:

以mybatis的配置为例:

.properties 格式

server.port=8081 spring.datasource.driver-class-name=com.mysql.jdbc.Driver spring.datasource.url=jdbc:mysql://localhost:3306/demo?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=Asia/Shanghai spring.datasource.username=root spring.datasource.password=root

.yml 格式

server: port: 8081 spring: datasource: driver-class-name: com.mysql.cj.jdbc.Driver url: jdbc:mysql://localhost:3306/demo?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=Asia/Shanghai username: root password: root

从上面的实例我们可以发现,两者的区别主要有以下几点:

语法结构

.properties 格式使用的是 键值对形式(key=value),而 .yml 格式则使用的是 树状结构(key: value);.properties 格式通过 . 来连接,用 = 来赋值,结构上比较直接,而 .yml 格式则使用 : 来分层,结构上呈现树状结构,层次感明显,而且赋值时 : 的后边必须 接着一个空格再赋值

执行先后顺序 如果一个工程中同时存在两种格式的文件,那么会 优先加载 .yml 文件,然后再加载 .properties,而且后加载的 .properties 会覆盖之前加载的 .yml 文件。

此外,.yml 配置时需要注意以下几点:

缩进必须用空格,不能用 Tab@PropertySource 注解不能加载 yml 文件


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有