美文网首页SpringBoot云课堂
读取配置文件的两种方法

读取配置文件的两种方法

作者: Tommmmm | 来源:发表于2018-02-12 15:00 被阅读8次

读取配置文件的两种方法

1、使用@PropertySource注解

配置文件jdbc.properties jdbc.properties

配置类

@Configuration
@PropertySource(value= {"classpath:jdbc.properties"},ignoreResourceNotFound=false,encoding="UTF-8")
@ComponentScan("com.example")
public class Config {
    @Value("${jdbc.driver}")
    private String driver;

    @Value("${jdbc.url}")
    private String url;

    @Value("${jdbc.username}")
    private String username;

    @Value("${jdbc.password}")
    private String password;

    /*
    @Bean
    public static PropertySourcesPlaceholderConfigurer propertySourcesPlaceholderConfigurer() {
        return new PropertySourcesPlaceholderConfigurer();
    }
    */
    public String getUrl() {
        return url;
    }

    public String getUsername() {
        return username;
    }

    public String getPassword() {
        return password;
    }
}

测试代码

 @Test
    public void test1(){
        AnnotationConfigApplicationContext ctx=new AnnotationConfigApplicationContext(DoAnnoConfig.class);
        Config config=ctx.getBean(Config.class);
        System.out.print(config.getUsername());
    }

测试结果


测试结果

**@PropertySource可以传入一个文件,加载该文件下所有的.properties文件内容到Spring的配置项里,供Value注解使用。
**


2、使用Environment

配置类

@Configuration
@PropertySource(value= {"classpath:jdbc.properties"},ignoreResourceNotFound=false,encoding="UTF-8")
@ComponentScan("com.example")
public class Config1 {
    @Autowired
    private Environment env;
    public void print1(){
        System.out.print(env.getProperty("jdbc.username"));
    }
}

测试函数

    @Test
    public void test2(){
        AnnotationConfigApplicationContext ctx=new AnnotationConfigApplicationContext(DoAnnoConfig.class);
        Config1 config1=ctx.getBean(Config1.class);
        config1.print1();
    }

测试结果

测试结果
Spring抽象了一个Environment来表示环境配置。
Spring 的Environment包含两方便的抽象,profile和 property。
前者是一组bean的定义,只有相应的profile被激活的情况下才会起作用。
后者是提供方便的抽象,应用程序可以方便的访问 system property 环境变量自定义属性等。
Spring的Environment可以方便的访问property属性,包含系统属性,环境变量和自定义的。

相关文章

  • springboot静态属性读取配置文件

    springboot 静态属性读取配置文件 yml配置 两种配置读取方式 非静态属性配置读取:依赖set方法 静态...

  • 地址替换方法封装

    封装替换地址的方法注:配置文件读取方法封装详见配置文件读取

  • 读取配置文件的两种方法

    读取配置文件的两种方法 1、使用@PropertySource注解 配置类 测试代码 测试结果 **@Proper...

  • Python读取ini配置文件

    配置文件ini的格式 读取ini文件 获取配置文件中对应值的基础方法 实现一个ini配置文件读取工具类

  • Python读取ini配置文件

    配置文件ini的格式 读取ini文件 获取配置文件中对应值的基础方法 实现一个ini配置文件读取工具类

  • springboot 学习笔记(三)属性注入

    配置文件使用的application.yml 定义读取配置文件的类 定义方法测试一下数据 读取配置文件的方式有很多...

  • 工程开发技巧

    spark读取配置文件中的配置 spring boot 两种配置文件,一种是application.propert...

  • go语言读取配置文件

    一些需要根据不同环境动态调整的信息需要写在配置文件中,go语言读取配置文件的方法有多种,以下介绍两种。 先创建一个...

  • TP5使用百度API

    配置文件 封装CURL的方法,用来读取url的内容

  • 配置文件使用实例

    从配置文件读取内容进行实例化 读取配置文件的类 配置文件 使用配置文件

网友评论

    本文标题:读取配置文件的两种方法

    本文链接:https://www.haomeiwen.com/subject/tjgrtftx.html