springboot中使用@ConfigurationProperties从配置文件中取值

我们在application.properties中写了book的一些属性

book.name="活着"
book.price=100
book.size="大"

然后,我们新建一个类,book

package com.lyb.demo.model;

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

import javax.validation.constraints.Email;

@ConfigurationProperties(prefix = "book")
@Component
public class book {
    private String name;
    private int price;
    private String size;

    @Override
    public String toString() {
        return "book{" +
                "name='" + name + '\'' +
                ", price=" + price +
                ", size='" + size + '\'' +
                '}';
    }

    public String getName() {
        return name;
    }

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

    public int getPrice() {
        return price;
    }

    public void setPrice(int price) {
        this.price = price;
    }

    public String getSize() {
        return size;
    }

    public void setSize(String size) {
        this.size = size;
    }
}

可以看到,我们使用了@Component 将book交给spring管理,使用@ConfigurationProperties(prefix="book")将配置文件中的book的值映射到book类中,

我们编写测试类

看是否能从配置文件中取出值并成功映射到类中

 @Autowired
private book book1;
@Test
    public void testConfigrationProperties(){
        System.out.print(book1.toString());
    }

运行就可以看到输出了配置文件中的值了

猜你喜欢

转载自blog.csdn.net/abc_123456___/article/details/91042191