前言

提示:这里可以添加本文要记录的大概内容:
例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。


提示:以下是本篇文章正文内容,下面案例可供参考

一、yaml是什么?

可以算是一种配置文件把 对标一下xml 在将来springboot的大范围流行 spring公司推荐的配置文件yaml就将成为主流的配置文件
我们使用这个文件能对springboot来进行一些配置 比如 我想要更改端口号
更改默认的服务器 我不想用tomcat了 我想要用其他的 都可以通过这个yaml文件来进行配置。

二、最重要的作用

在springboot里面 如果我需要对一个类进行注入 老方法是我用@Component 声明 然后再用注解来进行赋值 最后自动装配 这个类可以说就是被spring识别到了 直接使用就ok了

但是在springboot里面,我们可以使用yaml文件来进行注入 但是yaml文件对于格式十分的敏感 包括符号的使用 缩进等

yaml文件更强大的地方在于,他可以给我们的实体类直接注入匹配值!
直接在yaml文件里面去写缩进的不同的层级就是表示 “的” 的含义

person:
  name: liujiacheng
  dog:
    name: wangcai
    age : 5

具体步骤

首先你需要有一个pojo类

package com.example.demo.pojo;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;

@Component
这个里要记得注册到spring里面去  用component
@ConfigurationProperties(prefix = "person")
这个  就是让我们的yaml文件和这个进行关联  找到前缀为person的yaml文件内容 
这样就能实现注入
public class Person {
    String name;
    Dog dog;

    public Person() {
    }

    public Person(String name, Dog dog) {
        this.name = name;
        this.dog = dog;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public Dog getDog() {
        return dog;
    }


        public void setDog(Dog dog) {
            this.dog = dog;  }

    @Override
    public String toString() {
        return "Person{" +
                "name='" + name + '\'' +
                ", dog=" + dog +
                '}';
    }

}

运行结果
在这里插入图片描述

当然 这里是对于实体类来进行注入参数 我们同时也可以对配置类进行注入 不论用哪一种方式 只要能实现注入都是可以的。这里实际上实现的就是一个映射关系 将配置文件里面的内容进行映射 而这个@ConfigurationProperties(prefix = “person”)就是告诉spring找到位置

我们的springboot 还能用yaml来支持 jsr303 校验 虽然我也不知道 这个名字是个啥玩意

具体的是这样的
在这里插入图片描述
更多的jsr303 校验可以上百度里面看一下 实际上就是规范每一个类的值是什么样的格式 url还是email 还是null 都是可以规范的

Logo

GitCode 天启AI是一款由 GitCode 团队打造的智能助手,基于先进的LLM(大语言模型)与多智能体 Agent 技术构建,致力于为用户提供高效、智能、多模态的创作与开发支持。它不仅支持自然语言对话,还具备处理文件、生成 PPT、撰写分析报告、开发 Web 应用等多项能力,真正做到“一句话,让 Al帮你完成复杂任务”。

更多推荐