3. 方法一 :直接读取配置文件

System.getProperty("user.dir")  可以得到根目录 。

   File dumpFile=new File(System.getProperty("user.dir") + "/postman-sub-xxx/src/main/resources/application.yml");
        Map father = Yaml.loadType(dumpFile, HashMap.class);
        for(Object key:father.keySet()){
            System.out.println(key+":\t"+father.get(key).toString());

如果在 yml 中配置为

spring.rocketmq.namesrvAddr: http://xxxxxx-orm  ( 标准应该用冒号,用点号只是方便此处取值 )

运行可以在控制台输出:

但这种用法要求是 yml 文件在本工程中,我的情况是聚合工程,跨工程没有读取到。

yml 配置文件在 web 工程中,而读取是在 sub 工程中。这种初始化方法 聚合工程也能取到配置文件中的值 。

读取方式如下,直接把 @Value 给在 set 方法就可。nameservAddr 便有值了。

   private String nameservAddr;
    @Value("${spring.rocketmq.namesrvAddr}")
    public void setNameservAddr(String nameservAddr) {
        this.nameservAddr = nameservAddr;

类似方法二,但比方法二更简易些。

import lombok.Getter;
import lombok.Setter;
    @Getter
    @Setter
    @Value("${liuxiao.defualtUser}") // 读取配置文件中的值
    private String defualtUser;

不用写 set 方法,直接给注解。

前提是要装一个插件:lombok 。 直接在插件中搜索到它,装上就行了。

附:可组合使用多个注解,读取配置文件中的值

import org.springframework.boot.context.properties.ConfigurationProperties;

如上图,加上第一个红框中注解可以直接从配置文件中读取到 spring.redis 下面所有的配置内容。

如下图,事实上  spring下 redis 下的配置 expiration、isok、notused 的值都已读取到了。

只要本类成员变量的属性名和配置文件中 key 对应且提供了 @Getter @Setter 这2个注解,就可直接把配置文件中 key 的 value 初始化到本类属性 expiration 上了。

如本例中  expiration 的值为 122345786755 已经可以直接使用了。

方法三是我觉得最简单的。1. 工程结构:2. 我要读取application.yml 中属性 :spring.rocketmq.namesrvAddr 的值。3.方法一 :直接读取配置文件System.getProperty("user.dir") 可以得到根目录 。 File dumpFile=new File(System.getProper... // System.getProperty("user.dir")可以拿到当前项目/打出来的jar包所在的路径 String userdirStr = System.getProperty("user.dir"); Stri...
以前我们会把一些常量,放在接口,因为接口默认属性就是静态的,缺省了public static final 注意:既可以读取自定义的属性,也可以读取官方封装好的属性。 以前,接口定义常量 public interface WeixinPayConstants { // 接口里面默认属性就是静态常量,可以缺深public static fianl // APID String APPID = "45645xxx2"; // 商户号 String MCID = "48xxxxx
0)、application.yml:系统默认读取配置文件入口 1)、application-dev.yml:开发环境配置文件 2)、application-test.yml:测试环境配置文件 3)、application-pro.yml:生成环境配置文件 2、本地启动: 0)、修改application-dev.yml的配置项 1)、运行NoticeStartApp.java 3、部署与发布: 0)、部署: 项目根目录(和pom.xml同级) clean package -Dmaven.test.skip=true 1)、启动: muheda-notice-1.0-SNAPSHOT.jar --spring.profiles.active=test --spring.profiles.active=test为指定加载配置文件、 后台启动运行:nohup muheda-notice-1.0-SNAPSHOT.jar --spring.profiles.active=te 在Spring Boot的源码,比如涉及到Http编码的自动配置、数据源类型的自动配置等大量的使用到了@ConditionalOnProperty的注解。 HttpEncodingAutoConfiguration类部分源代码: @Configuration(proxyBeanMethods = false) @EnableConfigurationProperties(HttpProperties.class) @ConditionalOnWebApplication(typ (1)YAML是JSON的集,简洁而强大,是一种专门用来书写配置文件的语言,可以替代application.properties。 (2)在创建一个SpringBoot项目时,引入的spring-boot-starter-web依赖间接地引入了snakeyaml依赖,snakeyaml会实现对YAML配置的解析。 (3)YAML的使用非常简单,利用缩进来...
Springboot项目加载配置文件三种不同的方式: 方式一:使用 application.yml 配置文件读取 方式二:使用application.properties 配置文件读取 方式三:使用自定义person.properties 配置文件读取 https://blog.csdn.net/qq_40943363/article/details/100833636
1、java解析读取excel文件的数据,并写入数据库。 2、java读取数据库数据,并导出为excel文件。 3、README.md有详细的操作步骤示例。 使用说明: 1. 先使用postman导入:other/excel相关.postman_collection.json 2. 导入sql到数据库:other/excel.sql 3. idea导入excelhandle项目,修改application-local.yml的数据库url和username、password信息,配置maven 4. 启动项目后,使用postman请求,可进行演示。如果问题可联系:wyj_formal@163.com 5、内有示例所需要案例文件
数据库配置 Golang 包按照 rails database.yml 约定读取数据库设置,请参阅包括带有环境变量的嵌入式 erb 标签,并为 github.com/lib/pq 和 github.com/go-sql-driver/ 生成连接字符串mysql 驱动程序。 go get -u github.com/dovadi/dbconfig 在settings.json需要定义数据库yaml文件的位置和应用环境 "database_file" : "/Users/dovadi/rails/blog/config/database.yml" "environment" : "development" 如果json配置文件没有定义环境,可以定义环境变量APPLICATION_ENV(操作系统级别),否则默认环境为“development”
Eureka涉及到的参数配置项数量众多,它的很多功能都是通过参数配置来实现的,了解这些参数的含义有助于我们更好的应用Eureka的各种功能,下面对Eureka的配置项做具体介绍,供大家参考。 Eureka客户端配置 1、RegistryFetchIntervalSe...
public void printValues() { System.out.println("Value1: " + value1); System.out.println("Value2: " + value2); 在application.yml文件,你需要为每个要读取的属性定义对应的,例如: key1: hello key2: world 然后,你可以在程序的其他部分获取这些,例如: @Autowired private MyConfig myConfig; public void doSomething() { myConfig.printValues(); 这样,你就可以在Java代码读取application.yml配置文件了。
解决:Unexpected token (START_OBJECT), expected START_ARRAY: need JSON Array to contain As.WRAPPER_ARRA qq1448901135: 感谢,也是这个问题 解决跨域问题:No ‘Access-Control-Allow-Origin‘ header is present on the requested resource. 学习了,受益匪浅!希望能与博主互相交流,欢迎来访我的博客 解决跨域问题:No ‘Access-Control-Allow-Origin‘ header is present on the requested resource. 在我的后端加这个过滤器,解决了uniapp前端跨域问题,太感谢了,帮大忙了 解决:Caused by: redis.clients.jedis.exceptions.JedisDataException: WRONGTYPE Operation against a key 解决:Unexpected token (START_OBJECT), expected START_ARRAY: need JSON Array to contain As.WRAPPER_ARRA