微服务,微架构[五]之springboot读取properties文件

介绍

     很多项目中都会有配置文件,比如说配置 数据库的连接项目常量定义等等参数配置,那么这些参数在项目启动的时候就会被读到指定的容器中,可供项目初始化将必要的对象都初始化完成,如果参数配置错误或参数没有定义,项目在启动的时候就会相应的报错,提示某某参数没有定义或者不对,今天我给大家介绍一下springboot如何读取这些初始化参数,让项目启动时候能够自动的加载,并且应用到我们的项目中。

一、spring boot 默认定义

默认参数文件名称为  application.properties 或者 application.yaml   ,这两种格式选其中任意一种可以作为项目启动的配置文件,两种格式有所不同

     properties 格式  my.web.name=eshengtai  类似键值对的方式

     yaml
格式   

              my:

                    web:

                          name:eshengtai  

当然也可以自定义配置文件,作为项目的其他配置参数文件,比如  redis.properties,dataSource.properties可以单独定义配置文件,让springboot在启动时帮我们加载,在程序中可以方便的使用

二、读取配置文件

    1、读取application.properties配置文件中,自定义的参数

project.name=eshengtai
project.url=www.eshengtai.net

     读取参数自定义内容

/**
 * 读取application properties文件内容
 * @author wolf.yansl
 *
 */
@Component
public class ApplicationProperties {
	@Value("${project.name}")
    private String name;
    @Value("${project.url}")
    private String url;
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public String getUrl() {
		return url;
	}
	public void setUrl(String url) {
		this.url = url;
	}

}

2、读取自定义properties文件,读取自定义参数,eshengtai.properties

spring.boot=boot
spring.url=spring.io

      读取参数定义内容

/**
 * 读取自定义配置文件,eshengtai.properties
 * @author wolf.yansl
 *
 */
@Component
@PropertySource("classpath:eshengtai.properties")
public class EShengTaiProperties {
	@Value("${spring.boot}")
	private String springName;
	@Value("${spring.url}")
	private String url;
	public String getSpringName() {
		return springName;
	}
	public void setSpringName(String springName) {
		this.springName = springName;
	}
	public String getUrl() {
		return url;
	}
	public void setUrl(String url) {
		this.url = url;
	}
}

3、动态切换配置文件properties文件,在不同的开发环境下,如何可以达到,只需要修改参数就可以动态读取不同的参数文件,从而方便快捷的使用properties的内容

    配置文件有4个

application-dev.properties  开发环境  ,server.port=1111服务器端口1111

application-prod.properties 正式环境 ,server.port=2222服务器端口2222

application-test.properties  测试环境 ,server.port=3333服务器端口3333

application.properties  主要启动配置文件,配置切换启动读哪个文件初始化环境 spring.profiles.active 动态切换读取配置文件,修改服务器的访问端口变化,测试

spring.profiles.active=dev    #springboot启动读取 application-dev.properties,并且访问端口为1111

spring.profiles.active=prod    #springboot启动读取 application-prod.properties,并且访问端口为2222

spring.profiles.active=test   #springboot启动读取 application-.propertiestt,并且访问端口为3333

时间: 2024-10-31 11:10:41

微服务,微架构[五]之springboot读取properties文件的相关文章

元数据如何驱动微服务报文架构?

本文讲的是元数据如何驱动微服务报文架构?,随着微服务的概念逐渐被人们接受,大家都在努力将自己的应用系统向微服务框架转型.在我们研发微服务框架的时候,就发现随着服务数量的增多,服务接口定义就需要一套统一数据标准来支撑:在对服务接口做实参的时候,频繁的且重复性的赋值让人很抓狂.本文将阐明我们面临这些问题是如何解决的. 本文目录: 一.什么是报文 二.报文为什么需要规范 三.常规的报文规范 四.微服务下的报文规范面临的问题 五.元数据驱动的微服务报文 六.技术实践 一.什么是报文? 报文(messag

读取properties文件

问题描述 //继承了 ServletContextListenerpublic void contextInitialized(ServletContextEvent sce) { try { p.load(ClassLoader.getSystemResourceAsStream("config.properties")); } catch (IOException e) {e.printStackTrace(); }driver = p.getProperty("data

J2SE API读取Properties文件的六种方法

使用J2SE API读取Properties文件的六种方法: 1.使用java.util.Properties类的load()方法 示例:InputStream in = lnew BufferedInputStream(new FileInputStream(name)); Properties p = new Properties(); p.load(in); 2.使用java.util.ResourceBundle类的getBundle()方法 示例:ResourceBundle rb =

java读取properties文件的方法

  本文实例讲述了java读取properties文件的方法.分享给大家供大家参考.具体实现方法如下: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 package com.t

java读取properties文件

关键字: java读取properties配置文件 今天要将以前一个项目的数据连接改成从properties文件中配置.找了好久,网上也不少,可就是读取文件时总是找不到文件在哪(我放在classes目录下了).最后终于成功,记下,以做纪念. Java代码 package com.web.connection; import java.io.IOException;import java.io.InputStream;import java.sql.Connection;import java.s

2-scala文件操作--自动关闭打开的资源,读取properties文件

简介 使用scala的loan pattern自动关闭打开的资源 读取properties文件 依赖的jar 使用scala_arm库自动关闭资源文件时,需要引入以下依赖: <dependency> <groupId>com.jsuereth</groupId> <artifactId>scala-arm_${scala.binary.version}</artifactId> <version>1.4</version>

读取properties文件并遍历输出

读取properties文件,生成map,并遍历输出所有的key--value package com; import java.io.BufferedInputStream; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; import java.io.InputStream; import java.util.HashMap; import ja

java读取properties文件的方法_java

本文实例讲述了java读取properties文件的方法.分享给大家供大家参考.具体实现方法如下: package com.test.demo; import java.util.Properties; import java.io.InputStream; import java.io.IOException; /** * 读取Properties文件的例子 * File: TestProperties.java */ public final class TestProperties { p

java读取properties文件的方法实例分析_java

本文实例讲述了java读取properties文件的方法.分享给大家供大家参考.具体分析如下: 1.不在项目中读取: Properties properties = new Properties(); BufferedReader read = new BufferedReader(new InputStreamReader(new FileInputStream("文件的路径"),"utf-8")); properties.load(read); properti