栏目分类:
子分类:
返回
终身学习网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
终身学习网 > IT > 软件开发 > 后端开发 > Java

springboot读取配置文件的几种方式

Java 更新时间:发布时间: 百科书网 趣学号
1,介绍:

       开发中难免会有使用到定义属性的时候,那学习springboot的肯定都知道获取方式,因为工作常用,我简单归纳几种方式以便需时查看。

1.1,yml格式常见的几种方式:

application.yml配置文件:

company:
	id: 1
 	nanme: 东方红
  	describe: 一种颜色,美好的颜色

第一种方式:
使用@ConfigurationProperties注解

@Data
@ToString
@Component

@ConfigurationProperties(
        prefix = "company"
)
public class Company {
    
    private Long id;

    
    private String name;

    
    private String describe;
}

第二种方式:
使用@value注解

@Data
@ToString
@Component
public class Company {
    
    @Value(value = "${company.id}")
    private Long id;

    
    @Value(value = "${company.name}")
    private String name;

    
    @Value(value = "${company.describe}")
    private String describe;
}

测试类:

@RunWith(SpringRunner.class)
@SpringBootTest
public class TestYml {

    @Autowired
    private Company company;

    @Test
    public void test01() {
        System.out.println(company);
         
    }
}
1.2,properties格式常见的几种方式:

company.properties配置文件:

company.id=1
company.name=小小红旗
company.describe=人民的精神信仰

第一种方式:
使用@value注解

@Data
@ToString
@Component
@PropertySource(value = {"classpath:company.properties"}, encoding = "UTF-8") //加载外部资源文件
public class Company {
    
    @Value(value = "${company.id}")
    private Long id;

    
    @Value(value = "${company.name}")
    private String name;

    
    @Value(value = "${company.describe}")
    private String describe;
}

第二种方式:
使用@ConfigurationProperties注解

@Data
@ToString
@Component
@PropertySource(value = {"classpath:company.properties"}, encoding = "UTF-8") //加载外部资源文件
@ConfigurationProperties(prefix = "company")
public class Company {
    
    private Long id;

    
    private String name;

    
    private String describe;
}

测试类:

@RunWith(SpringRunner.class)
@SpringBootTest
public class TestYml {

    @Autowired
    private Company company;

    @Test
    public void test01() {
        System.out.println(company);

        
    }
}
2,对比:
方式评价
@ConfigurationProperties方便,不用每个字段上写,默认全赋值,但是缺点是字段名与属性名必须一致,不然映射不到内容
@Value每个字段上都要写上定义的属性名称,可以根据自己需要的进行赋值
转载请注明:文章转载自 www.051e.com
本文地址:http://www.051e.com/it/274806.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 ©2023-2025 051e.com

ICP备案号:京ICP备12030808号