05全局配置文件application.properties详解 06全局配置文件application.yaml详解

这篇具有很好参考价值的文章主要介绍了05全局配置文件application.properties详解 06全局配置文件application.yaml详解。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

             Spring Boot 提供了大量的自动配置,极大地简化了spring 应用的开发过程,当用户创建了一个 Spring Boot 项目后,即使不进行任何配置,该项目也能顺利的运行起来。当然,用户也可以根据自身的需要使用配置文件修改 Spring Boot 的默认设置。

SpringBoot 默认使用以下 2 种全局的配置文件,其文件名是固定的。

  • application.properties
  • application.yml

application.properties与 application.yaml都可以作为Spring Boot的配置文件,只是书写格式不同而已,在 Spring Boot 启动时被自动读取。当然也可以同时使用,但同级目录下读取的顺序是先读取application.properties,读取application.yaml。该配置文件的存放路径如下图所示。

05全局配置文件application.properties详解
                    
            
06全局配置文件application.yaml详解

本节我们将详细介绍 application.properties的语法及使用

下面是一个简单的 application.properties属性配置文件。

server.port=8080 

Properties 语法

properties的语法如下:

  • 使用properties的key=value形式
  • 使用层级递进关系。
  • 从最高层到最低层逐个低级,中间使用点"."间隔

例如: 

server.address=localhost/170.20.10.112 #可以写IP或域名
server.port=80 #表示监听的80端口,默认是8080
spring.datasource.driver-class-name=com.mysql.jdbc.Driver #数据库驱动
spring.datasource.url=jdbc:mysql://localhost:3306/cqyddx?useUnicode=true&characterEncoding=UTF-8&allowPublicKeyRetrieval=true&useSSL=false&serverTimezone=Asia/Shanghai
spring.datasource.username=root
spring.datasource.password=root


Properties常用写法

properties支持以下三种数据结构:

  • 对象:键值对的集合
  • 数组:一组按次序排列的值
  • 字面量:单个的、不可拆分的值

类准备:


注意:使用需要添加依赖

<dependency>
     <groupId>org.projectlombok</groupId>
     <artifactId>lombok</artifactId>
     <optional>true</optional>
 </dependency>

 User类:

@Data
@AllArgsConstructor
@Component
@ConfigurationProperties(prefix = "user")
public class User {
    private String username;
    private Integer age;
    private Book book;
    private Date birth;
    private String[] hobby;
    private List<String> booksName;
    private Map<String, Object> books;
    private Set<Double> salary;
    public User() {        System.out.println("创建user bean");    }
}

@Data
@AllArgsConstructor
@Component
public class Book {
    private String bookName;
    private Double bookPrice;
    public Book(){
        System.out.println("创建book bean");
    }
}

测试类

@SpringBootApplication
public class SpringbootApplication {

    public static void main(String[] args) {

        //1、返回IOC容器
        ConfigurableApplicationContext run = SpringApplication.run(SpringbootApplication.class, args);

        User user =run.getBean("user",User.class);
        System.out.println(user.getUsername());
        System.out.println(user);
    }
}

properties字面量写法

      字面量是指单个的,不可拆分的值,例如:数字、字符串、布尔值、以及日期:date、boolean、string、number、null等。
      在 properties中,使用“key[=]value的形式表示一对键值对(空格不能省略),如 user.username"xiatian",user.age32。

user.username=xiatian is good

user.age=32

user.birth=2020/09/10 13:14:15

properties对象写法

在 properties中,对象可能包含多个属性,每一个属性都是一对键值对。properties 为对象提供了 以下写法:

使用递进表示对象与属性的层级关系。
user.name="xiatian"

user.age=32

properties 数组、List、Map、Set 行内写法

#数组行内写法
user.hobby=篮球,足球,排球


#list集合行内写法
user.booksname=计算机基础,javaEE框架,springboot


#map的行内写法
user.books.chinese={key1=spring,key2=springmvc,key3=springboot,key4=springcloud,0=活着,1=孙子兵法,2=诗经,hz=活着,szbf=孙子兵法,sj=诗经}


#set的行内写法
user.salary=6000,7000,8000

测试结果如下:

User(

    username=xiatian is good,

    age=32,

    book=Book{bookName='springboot', bookPrice=102.0},

    birth=Thu Sep 10 13:14:15 CST 2020,

    hobby=[篮球, 足球, 排球],

    booksName=[计算机基础, javaEE框架, springboot],

    books={

     chinese={

       key1=spring,

       key2=springmvc,

       key3=springboot,

       key4=springcloud,

       0=活着,

       1=孙子兵法,

       2=诗经,

       hz=活着,

       szbf=孙子兵法,

       sj=诗经}

    },

    salary=[6000.0, 7000.0, 8000.0]

);

properties  数组、List、Map、Set 非行内写法 及 复合结构写法

#数组写法    使用[x]表示数组中的元素,写法如下:
user.hobby[0]=篮球
user.hobby[1]=足球
user.hobby[2]=排球


#list集合写法  使用[x]表示集合中的元素,写法如下:
user.booksname[0]=计算机基础
user.booksname[1]=javaEE框架
user.booksname[2]=springboot


##map集合的key value  使用key表示map中的key,写法如下:
user.books.key1=spring
user.books.key2=springmvc
user.books.key3=springboot
user.books.key4=springcloud


#map集合的value是map形式 使用chinese[key]表示map中的key为map类型,写法如下:
user.books.chinese[0]=活着
user.books.chinese[1]=孙子兵法
user.books.chinese[2]=诗经


#map集合的value是map形式 使用chinese.xxx表示map中的key为map类型,写法如下:
user.books.chinese.hz=活着
user.books.chinese.szbf=孙子兵法
user.books.chinese.sj=诗经


#set集合以下标方式赋值  使用[x]表示集合中的元素,写法如下:
user.salary[0]=6000
user.salary[1]=7000
user.salary[2]=8000


#复合结构写法   使用递进表示对象与属性的层级关系
user.book.bookName=springboot
user.book.bookPrice=102


测试结果如下:

User(
    username=xiatian is good,
    age=32,
    book=Book{bookName='springboot', bookPrice=102.0},
    birth=Thu Sep 10 13:14:15 CST 2020,
    hobby=[篮球, 足球, 排球],
    booksName=[计算机基础, javaEE框架, springboot],
    books={
     chinese={
       key1=spring,
       key2=springmvc,
       key3=springboot,
       key4=springcloud,
       0=活着,
       1=孙子兵法,
       2=诗经,
       hz=活着,
       szbf=孙子兵法,
       sj=诗经}
    },
    salary=[6000.0, 7000.0, 8000.0]
);

06全局配置文件application.yaml详解

https://blog.csdn.net/qq_41946216/article/details/124770687?spm=1001.2014.3001.5501文章来源地址https://www.toymoban.com/news/detail-404689.html

到了这里,关于05全局配置文件application.properties详解 06全局配置文件application.yaml详解的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Spring Boot入门(03): yaml、properties配置文件介绍及使用 | 超级详细,建议收藏

            在软件开发中,配置文件是一项非常重要的内容。它们通常用于存储应用程序的各种设置和配置选项,包括数据库连接信息、日志级别、Web服务器端口、安全认证密钥等等。在不同的环境(例如开发、测试、生产)中,这些配置文件可能会有所不同。因此,良好的

    2024年02月11日
    浏览(54)
  • 常见配置文件格式INI/XML/YAML/JSON/Properties/TOML/HCL/YAML Front Matter/.env介绍及实例

    以下是常见配置文件格式(INI、XML、YAML、JSON、Properties、TOML、HCL、YAML Front Matter、.env)的比较: 配置文件格式 简介 语法定义 优点 缺点 常见使用场景 常见编程语言 INI 简单的文本文件格式 节(section)和键值对(key-value pairs) 简单易懂,容易编辑和维护 对复杂数据结构和

    2024年02月10日
    浏览(48)
  • springboot之一:配置文件(内外部配置优先顺序+properties、xml、yaml基础语法+profile动态切换配置、激活方式)

    Spring Boot是基于约定的,所以很多配置都有默认值,但如果想使用自己的配置替换默认配置的话,就可以使用application.properties或者application.yml(application.yaml)进行配置。 注意配置文件的命名必须是application开头。 在同一级目录下优先级为:properties yml yaml file:../config/ :当前项目

    2024年02月10日
    浏览(51)
  • 微服务探索之路06篇k8s配置文件Yaml部署Redis使用Helm部署MongoDB和kafka

    1.1创建配置文件redis.conf 切换到自己的目录下如本文是放在/home/ubuntu下 cd /home/ubuntu vim redis.conf 1.2创建deployment配置文件 vim redis.yaml 1.创建k8sConfig Maps配置文件 kubectl create cm redis-conf --from-file=redis.conf 2.部署redis Deployments kubectl create -f redis.yaml 3.将资源公开一个新的服务service`kube

    2024年02月16日
    浏览(48)
  • IDEA中 application.yaml文件没有绿色的叶子

    问题背景 前段时间一直在刷算法题和备战考试,忽略了项目方面的锻炼,于是今天就想着来写一个练手的项目,重新熟悉一下技术栈。结果刚搭建一个SpringBoot项目,就发现application.yaml配置文件没有被IDEA识别,显示为灰色,同时没有出现Spring标志性的绿色叶子 问题原因 :

    2024年02月15日
    浏览(43)
  • IDEA中application.properties文件中文乱码

    项目编码格式与IDEA编码格式不一致导致的 在File-Settings-Editor-File Encodings选项中,将Global Encoding,Project Encoding,Default encoding for properties files这三个选项置为一致,可以是GBK或者UTF-8 注:修改完后乱码并不会变成中文,新输出的中文就不会变成?了。

    2024年04月16日
    浏览(40)
  • 03 SpringBoot整合MVC+Application.yaml的Web配置

    创建程序 引入依赖 创建启动类 创建实体类 编写Controller 当涉及Spring Boot的Web应用程序配置时,以下是五个重要的配置参数: server.port : 指定应用程序的HTTP服务器端口号。默认情况下,Spring Boot使用8080作为默认端口。您可以通过在配置文件中设置 server.port 来更改端口号。 s

    2024年01月18日
    浏览(46)
  • SpringBoot - 配置文件application.yml使用详解(附:Profile多环境配置)

    SpringBoot - 配置文件application.yml使用详解(附:Profile多环境配置) 1,基本介绍 (1)YAML 是 JSON 的超集,简洁而强大,是一种专门用来书写配置文件的语言,可以替代 application.properties。 (2)在创建一个 SpringBoot 项目时,引入的 spring-boot-starter-web 依赖间接地引入了 s

    2024年02月08日
    浏览(47)
  • Java实战:Spring Boot application.yml配置文件详解

    本文将详细介绍Spring Boot application.yml 配置文件的使用和配置项。我们将探讨 application.yml 文件的基本概念,以及如何使用它来配置Spring Boot应用程序的各个方面。此外,我们将通过具体的示例来展示如何配置不同的Spring Boot组件,如数据源、数据库、缓存、邮件服务等。本文适

    2024年04月24日
    浏览(45)
  • Nacos 小bug: application.properties配置未生效,导致端口未生效

    最近用了下nacos 1.4.6 ,发现windows 中修改配置中的启动端口未生效,其实就是配置文件没读取到。 去github 逛了一下issue ,参考这个:https://github.com/alibaba/nacos/issues/10217 这哥们儿是nacos 1.4.5 Linux系统下的相同问题,shell 中有个bug,改了就好 同理,Windows也一样,找到startup.cmd 文件的

    2024年02月07日
    浏览(52)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包