java springboot 读取自定义配置文件

application.properties、test.properties

maven中引用 :

<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-configuration2</artifactId>
<version>2.6</version>
</dependency> <dependency>
<groupId>commons-beanutils</groupId>
<artifactId>commons-beanutils</artifactId>
<version>1.9.4</version>
</dependency>

在“src\main\resources”中增加一个test.properties文件,内容如下:

database.url=222
database.username=333
database.password=uuu

在Controller中使用:

package com.sixun.scnxsign;

import org.apache.commons.configuration2.Configuration;
import org.apache.commons.configuration2.ex.ConfigurationException;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import java.io.File; @RestController
public class TestController { @RequestMapping("/test3")
public String test3() throws Exception{ StringBuilder scLog=new StringBuilder();
// Configurations 类和 springboot 的类有冲突,这里写全包名 org.apache.commons.configuration2.builder.fluent.Configurations
org.apache.commons.configuration2.builder.fluent.Configurations configs = new org.apache.commons.configuration2.builder.fluent.Configurations();
try { String appRootDir = System.getProperty("user.dir");
scLog.append("\r\n");
scLog.append(" appRootDir: " + appRootDir); File fi=new File("test.properties");
scLog.append("\r\n");
scLog.append(" fi.getAbsolutePath: " + fi.getAbsolutePath());
//scLog.append("fi.getParent: " + fi.getParent()); // 加载 INI 配置文件
Configuration ini = configs.properties(new File("test.properties")); // 获取数据库连接 URL
String url = ini.getString("database.url");
System.out.println("Database URL: " + url); scLog.append("\r\n");
scLog.append(" Database URL: " + url);
// 获取数据库用户名和密码
String username = ini.getString("database.username");
String password = ini.getString("database.password");
System.out.println("Database Username: " + username);
System.out.println("Database Password: " + password); scLog.append("\r\n");
scLog.append(" Database Username: " + username); scLog.append("\r\n");
scLog.append(" Database Password: " + password); } catch (ConfigurationException e) {
e.printStackTrace();
} return "Hello Spring Boot 1" +scLog.toString();
}
}

注意:Configurations 类和 springboot 的类有冲突,这里写全包名 org.apache.commons.configuration2.builder.fluent.Configurations

页面输出:

Hello Spring Boot 1 appRootDir: D:\java-proj\读取INI测试\scnxsign fi.getAbsolutePath: D:\java-proj\读取INI测试\scnxsign\test.properties Database URL: 222 Database Username: 333 Database Password: uuu

调试时,直接修改 resources\test.properties 文件。

发布时,把 test.properties 和你的 .jar 文本放同一目录即可,你可以实时修改 test.properties 里的内容 。

end

 

java springboot 读取自定义配置文件的更多相关文章

  1. Springboot读取自定义配置文件的几种方法

    一.读取核心配置文件 核心配置文件是指在resources根目录下的application.properties或application.yml配置文件,读取这两个配置文件的方法有两种,都比较简单. ...

  2. SpringBoot读取自定义配置文件

    自定义配置文件 my-config.properties bfxy.title=bfxy bfxy.name=hello spring boot! bfxy.attr=12345 配置文件类 appc ...

  3. springboot读取自定义配置文件节点

    今天和大家分享的是自定义配置信息的读取:近期有写博客这样的计划,分别交叉来写springboot方面和springcloud方面的文章,因为springboot预计的篇章很多,这样cloud的文章就需 ...

  4. Springboot 之 自定义配置文件及读取配置文件

    本文章来自[知识林] 读取核心配置文件 核心配置文件是指在resources根目录下的application.properties或application.yml配置文件,读取这两个配置文件的方法有两 ...

  5. Springboot 之 自定义配置文件及读取配置文件注意:配置文件中的字符串不要有下划线 .配置中 key不能带下划线,value可以(下划线的坑,坑了我两天..特此纪念)

    注意:配置文件中的字符串不要有下划线 .配置中  key不能带下划线,value可以 错误的.不能读取的例子: mySet .ABAP_AS_POOLED      =  ABAP_AS_WITH_P ...

  6. jar包读取jar包内部和外部的配置文件,springboot读取外部配置文件的方法

    jar包读取jar包内部和外部的配置文件,springboot读取外部配置文件的方法 用系统属性System.getProperty("user.dir")获得执行命令的目录(网上 ...

  7. SpringBoot读取外部配置文件的方法

    SpringBoot读取外部配置文件的方法 Spring高级之注解@PropertySource详解(超详细) 1.@PropertySource(value = {"classpath:c ...

  8. springboot读取自定义properties配置文件方法

    1. 添加pom.xml依赖 <!-- springboot configuration依赖 --> <dependency> <groupId>org.sprin ...

  9. springboot下自定义配置文件,并在项目里读取的方法

    首先 pom文件引入springboot文件处理器 <dependency> <groupId>org.springframework.boot</groupId> ...

  10. springboot读取外部配置文件

    springboot项目打成jar包后不好进行配置文件修改,可设置为读取外部配置文件,方便进行配置修改. 步骤: 1.将jar包中的application.properties配置文件复制到自定义路径 ...

随机推荐

  1. 【笔记】GO内建容器--数组

    go内建容器--数组 1.数量要写在类型的前面 2.可通过_省略变量 3.不仅是range,任何地方都可以使用_来省略变量 4.如果只要i,则可写成for i := range numbers 5.[ ...

  2. 力扣595(MySQL)-大的国家(简单)

    题目: World 表: 如果一个国家满足下述两个条件之一,则认为该国是 大国 : 面积至少为 300 万平方公里(即,3000000 km2),或者人口至少为 2500 万(即 25000000)编 ...

  3. 在IDEA中新建一个SpringBoot项目(两种方法)

    方法一.使用Spring initializr快速构建 1.首先创建一个新的project,点击[File]->[New]->[Project](如果是最开始进入idea软件界面,就是点击 ...

  4. 云服务器ECS共享标准型S6全新发布,行业内最具性价比

    近日,阿里云弹性计算发布全新一代云服务ECS共享标准型S6,性能相对上一代实例提升15%以上,价格相对上一代最高降低42%,是目前国内云计算厂商更能够提供的最具性价比的云服务器产品.一些中小型网站.轻 ...

  5. Java Agent 踩坑之 appendToSystemClassLoaderSearch 问题

    简介: 从 Java Agent 报错开始,到 JVM 原理,到 glibc 线程安全,再到 pthread tls,逐步探究 Java Agent 诡异报错. 作者:鲁严波   从 Java Age ...

  6. AHPA:开启 Kubernetes 弹性预测之门

    ​简介:阿里巴巴云原生团队和阿里达摩院决策智能时序团队合作开发 AHPA 弹性预测产品,该产品主要出发点是基于检测到的周期做"定时规划",通过规划实现提前扩容的目的,在保证业务稳定 ...

  7. DataWorks搬站方案:Azkaban作业迁移至DataWorks

    简介: DataWorks迁移助手提供任务搬站功能,支持将开源调度引擎Oozie.Azkaban.Airflow的任务快速迁移至DataWorks.本文主要介绍如何将开源Azkaban工作流调度引擎中 ...

  8. boom lab分析

    单步调试: (gdb) bt #1 0x0000000000401347 in strings_not_equal () #2 0x0000000000400eee in phase_1 () #3 ...

  9. Spring学习一(依赖注入/Bean/注解等)

    1.Spring依赖注入的方式. 2.依赖注入的类型 3.Bean的作用域 4.自动注入 5.使用注解的方式 6.在spring配置文件中引入属性文件 1.Spring依赖注入的方式 平常的java开 ...

  10. Ubuntu空间不足,如何扩容

    扩容多少看自己需求 点击确定然后打开虚拟机 使用工具的第一种方法 使用Ubuntu自带的disk,直接搜软件disk,点击进去 选择自己要扩容的磁盘 点击设置,选择resize 你要扩容到多少就拖动到 ...