java代码中获取配置文件信息数据

  • 获取properties文件信息
-- 从properties文件中获取信息
1 创建文件对象 private static Properties config = new Properties();
2 加载文件对象 config.load(Thread.currentThread().getContextClassLoader().getResourceAsStream("配置文件的名字"))
3 根据key获取value config.getProperty(key)
-- 示例
public class ConfigTest {
    public static void main(String[] args) throws IOException {
        //创建文件对象
        Properties properties = new Properties();
        //加载文件获取数据 文件带后缀
        properties.load(Thread.currentThread().getContextClassLoader().getResourceAsStream("config.properties"));
        //根据key来获取value
        String ip = properties.getProperty("ip");
        System.out.println(ip);

    }
}
-- 示例二
      /*获取配置文件的第二种方式,ResourceBundle:中文 资源捆绑 getBundle:获取捆绑
        * 不用带文件后缀名
        * */
        ResourceBundle properties = ResourceBundle.getBundle("config");
        System.out.println(properties.getString("ip"));

  • Java读取配置文件yml中属性的方法
- 三种方式获取yml配置文件数据
1 在配置文件中写好连接数据库的信息 application.yml
2 通过注解来获取配置信息
	 /**
     * 通过注解的方式获取application的配置值
     */

    //创建成员变量以便方法获取
    @Value("${spring.datasource.username}")
    private String username;
2 /**
     * 通过注入Environment的方式获取application配置的值
     * @return
     */
    @Autowired
    private Environment environment;
3 通过实体类配置
 /**
     * 通过创建实体类配置ConfigurationProperties的方式获取application配置的值
     * @return
     */
    @Autowired
    private Config config;
4 启动项目 测试数据
 @RequestMapping("/config")
    @ResponseBody
    public String config(){
        System.out.println("近啦");
        //第一种获取
        System.out.println("username"+username);
        //第二种获取
        String property = environment.getProperty("spring.datasource.password");
        System.out.println("property"+property);
        //第三种获取
        String type = config.getType();
        System.out.println("type"+type);
        return username+property+type;
    }
- 实体类
@Component
@ConfigurationProperties(prefix = "spring.datasource")
@Data
public class Config {

    private String url;
    private String password;
    private String username;
    private String type;
 }

你可能感兴趣的:(苦练基本功,java,开发语言,spring)