springboot yml使用

springboot常用配置为yml格式。
在这里插入图片描述

yml语法规则:

在这里插入图片描述
举个栗子

server:
  port: 80

logging:
  level: info

读取yml单一数据

在这里插入图片描述

course: springboot
server:
  port: 80
package com.spring1.controller;

import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
@RequestMapping("/users")
public class UserController {
    
    
    @Value("${course}")
    private String c;
    @Value("${server.port}")
    private int port;

    @GetMapping
    public String getByid(){
    
    
        System.out.println("springboot is running!!!");
        System.out.println("course is:"+c);
        System.out.println("port is:"+port);
        return "springboot is running!!!";
    }
}

在这里插入图片描述

yml引用

在这里插入图片描述

dir: D:\windows
dir1: ${
    
    dir}\pic

yml读取全部数据

在这里插入图片描述

package com.spring1.controller;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.core.env.Environment;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
@RequestMapping("/users")
public class UserController {
    
    

    @Autowired
    private Environment env;

    @GetMapping
    public String getByid() {
    
    
        System.out.println("springboot is running!!!");
        System.out.println("course is:" + env.getProperty("course"));
        System.out.println("port is:" + env.getProperty("server.port"));
        return "springboot is running!!!";
    }
}

在这里插入图片描述

yml读取引用类型数据

在这里插入图片描述

server:
  port: 80

datas:
  one: 1
  two: spring
  three: java  

新建一个datas类:

快速生成:alt+insert
在这里插入图片描述

package com.spring1;

import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Configuration;
import org.springframework.stereotype.Component;

//定义为spring管控的bean
@Component
//指定加载的数据
@ConfigurationProperties(prefix = "datas")
public class datas {
    
    
    private String one;
    private String two;
    private String three;

    @Override
    public String toString() {
    
    
        return "datas{" +
                "one='" + one + '\'' +
                ", two='" + two + '\'' +
                ", three='" + three + '\'' +
                '}';
    }

    public String getOne() {
    
    
        return one;
    }

    public void setOne(String one) {
    
    
        this.one = one;
    }

    public String getTwo() {
    
    
        return two;
    }

    public void setTwo(String two) {
    
    
        this.two = two;
    }

    public String getThree() {
    
    
        return three;
    }

    public void setThree(String three) {
    
    
        this.three = three;
    }
}
package com.spring1.controller;

import com.spring1.datas;
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("/users")
public class UserController {
    
    

    @Autowired
    private datas d;

    @GetMapping
    public String getByid() {
    
    
        System.out.println("springboot is running!!!");
        System.out.println(d);
        return "springboot is running!!!";
    }
}

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_43788986/article/details/127056899