Java工程中如何读取配置文件中参数信息
Java中读取配置文件中参数:
方法一:通过JDK中Properties来实现对配置文件的读取。
Properties主要用于读取Java的配置文件,不同的编程语言有自己所支持的配置文件,配置文件中很多变量是经常改变的,为了方便用户的配置,能让用户够脱离程序本身去修改相关的变量设置。就像在Java中,其配置文件常为.properties文件,是以键值对的形式进行参数配置的。
1、配置文件的设置
sysName StefanieSun
sysChinesName=孙燕姿
sysBirthday:1976-07-02
#空格、:、= 三种方式均可表示键值对的存在。
2、新建读取类
public class SystemProperties{
//设置配置文件路径
private final static String urlPath1 = "cn/com/yitong/util/system.properties";
private final static String urlPath2 = "src/main/java/cn/com/yitong/util/system.properties";
private fianl static Properties properties = new Properties(); 方法1:使用classLoader来获取相对目录下文件(文件必须同SystemProperties同目录下;路径见"图1";此文件地址无需精确至"src/main/java/cn/com/yitong/util/system.properties",因为是同
SystemProperties同目录)
static{
try{
InputStream inputStream = ClassLoader.getSystemResourceAsStream(urlPath1);
properties.load(inputStream);
//properties.load(new InputStreamReader(ClassLoader.getSystemResourceAsStream(urlPath), "UTF-8"));方法类似
}catch(IOExecption e){
e.printStackTrace();
}
} 方法2:使用BufferedReader来读取配置文件。可以读取任意路径下的配置文件,并非一定同SystemProperties类同目录(此方法读取任意文件下配置文件,故相对路径为相对路径下的精确路径[需要相对精确的路
径来确定文件])
static{
try{
BufferedReader bufferedReader = new BufferedReader(new FileReader(urlPath2));
properties.load(bufferedReader);
}catch(IOException e ){
e.printStackTrace();
}
}
获取value值方法:
public static String getValue(String key){
return properties.getProperty(key).trim();
}
//通过key获取值,若值为null则返回defaultValue
public static String getValue(String key,String defaultValue){
return properties.getProperty(key,defaultValue);
}
}
图1
3、测试类:
public class SystemPropertiesText { public static void main(String[] strings) {
System.err.println(SystemProperties.getValue("sysName"));
}
}
方法二:通过ResourceBundle直接读取并取值
方法一中读取配置文件的时候支持多种格式的配置文件(properties,md等),而ResourceBundle只能读取.properties格式文件。ResourceBundle主要用于获取文件国际化、本地化(详细内容请自行搜索了解,此处不过多说明)。
1、配置文件信息同方法一
2、此方法不需要特定的java类来编写,可直接获取。
public class SystemPropertiesText{
public static void main(String[] s){
String urlPath = "cn/com/yitong/util/system.properties";
ResourceBundle resourceBundle = ResourceBundle.getBundle(urlPath);
System.err.println(resourceBundle.getString("sysName"));
}
}
Java工程中如何读取配置文件中参数信息的更多相关文章
- Java中读取配置文件中的内容,并将其赋值给静态变量的方法
应用场景 项目开发中某个功能需要抽取成方法写成一个工具类,提供给别人使用.写过工具类的人都知道,工具类中的方法一般都是静态方法,可以直接使用类名点方法名调用, 使用很方便,比如判断某个对象是否为空的方 ...
- java.util.Properties 读取配置文件中的参数
用法 getProperty方法的返回值是String类型. java.util.Properties 读取配置文件中的参数 //读取配置文件 FileInputStream inStream = n ...
- springboot读取配置文件中的信息
在一个项目中,我们有时候会把一些配置信息写入到一个配置文件中,在java代码中读取配置文件的信息.在此记录下读取属性文件中的内容. 在springboot项目中,springboot的配置文件可以使用 ...
- JAVA使用相对路径读取配置文件
JAVA使用相对路径读取配置文件[align=center][/align][size=medium][/size] 在软件开发中经常遇到读取配置文件,以及文件定位问题.今天做个总结. (一) ...
- mybatis 中的 xml 配置文件中 ‘<’、 ‘>’ 处理
mybatis 中的 xml 配置文件中 '<'. '>' 处理 1.使用转义字符将 '<'. '>' 替换掉. 描述 字符 转义字符 小于号 < < 大于号 &g ...
- Java中spring读取配置文件的几种方法
Spring读取配置XML文件分三步: 一.新建一个Java Bean: package springdemo; public class HelloBean { private String hel ...
- 使用 java.util.Properties 读取配置文件中的参数
配置文件格式 如下的配置参数格式都支持: Key = ValueKey = Key:ValueKey :Value 用法 getProperty方法的返回值是String类型. //读取配置文件 Fi ...
- java后台读取配置文件中key与value -----demo
public class ResourcesUtils { /* * @description:根据属性获取文件名 * * @param:propertyName文件的属性名 * * @return: ...
- JavaWeb中servlet读取配置文件的方式
我们在JavaWeb中常常要涉及到一些文件的操作,比如读取配置文件,下载图片等等操作.那我们能不能采用我们以前在Java工程中读取文件的方式呢?废话不多说我们来看看下我们以前在Java工程中读取文件是 ...
随机推荐
- Python面向对象之:类空间问题以及类之间的关系
一. 类的空间问题 1.1 何处可以添加对象属性 class A: def __init__(self,name): self.name = name def func(self,sex): se ...
- [译]ABP框架v2.3.0已经发布!
在新冠病毒的日子里,我们发布了ABP框架v2.3, 这篇文章将说明本次发布新增内容和过去的两周我们做了什么. 关于新冠病毒和我们的团队 关于冠状病毒的状况我们很难过.在Volosoft的团队,我们有不 ...
- 【Weiss】【第03章】练习3.25:数组模拟队列
[练习3.25] 编写实现队列的例程,使用 a.链表 b.数组 Answer: 在这章一开头就已经写了个链表的队列例程了,所以实际上只要做b小题就可以. 数组模拟队列和链表的两点小不同是: ①.数组空 ...
- 增删改查-java(新手)
PreparedStatement: 方法: Connection: 方法: 实例: 1.查询: package cn.chuang.JdbcDome; import java.sql.*; pu ...
- C# 基础知识系列- 1 数据类型
常见数据类型 C#的类型一般分为值类型.引用类型两大类型. 值类型的实例存放在栈中,引用类型会在栈中放置一个指针指向堆中的某一块内容. C#为我们内置了几个数据类型供我们使用: 关键词简写 对应的类全 ...
- WSGI标准、MVC和MTC框架
WSGI服务: wsgiref模块其实就是将整个请求信息给封装了起来,就不需要你自己处理了,假如它将所有请求信息封装成了一个叫做request的对象,那么你直接request.path就能获取到用户这 ...
- MyBatis框架——延迟加载
延迟加载也叫惰性加载或者懒加载,使⽤延迟是为了提⾼程序的运⾏效率,具体是通过尽量少执⾏ SQL 语句来提升效率.Java 程序与数据库的交互频率越低越好,MyBatis 提供的延迟加载功能就可以做到这 ...
- ORM常用字段及方式
创建小型数据库 模型层 ORM常用字段 AutoField int自增列,必须填入参数 primary_key=True.当model中如果没有自增列,则自动会创建一个列名为id的列. Integer ...
- Salesforce LWC学习(十四) Continuation进行异步callout获取数据
本篇参考: https://developer.salesforce.com/docs/component-library/documentation/en/lwc/lwc.apex_continua ...
- Python-标准模块与第三方模块
标准模块 python官方自己的模块 os os与os.path os.chdir('desktop') 跳转至指定目录 os.listdir() ...