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工程中如何读取配置文件中参数信息的更多相关文章

  1. Java中读取配置文件中的内容,并将其赋值给静态变量的方法

    应用场景 项目开发中某个功能需要抽取成方法写成一个工具类,提供给别人使用.写过工具类的人都知道,工具类中的方法一般都是静态方法,可以直接使用类名点方法名调用, 使用很方便,比如判断某个对象是否为空的方 ...

  2. java.util.Properties 读取配置文件中的参数

    用法 getProperty方法的返回值是String类型. java.util.Properties 读取配置文件中的参数 //读取配置文件 FileInputStream inStream = n ...

  3. springboot读取配置文件中的信息

    在一个项目中,我们有时候会把一些配置信息写入到一个配置文件中,在java代码中读取配置文件的信息.在此记录下读取属性文件中的内容. 在springboot项目中,springboot的配置文件可以使用 ...

  4. JAVA使用相对路径读取配置文件

    JAVA使用相对路径读取配置文件[align=center][/align][size=medium][/size]   在软件开发中经常遇到读取配置文件,以及文件定位问题.今天做个总结.   (一) ...

  5. mybatis 中的 xml 配置文件中 ‘<’、 ‘>’ 处理

    mybatis 中的 xml 配置文件中 '<'. '>' 处理 1.使用转义字符将 '<'. '>' 替换掉. 描述 字符 转义字符 小于号 < < 大于号 &g ...

  6. Java中spring读取配置文件的几种方法

    Spring读取配置XML文件分三步: 一.新建一个Java Bean: package springdemo; public class HelloBean { private String hel ...

  7. 使用 java.util.Properties 读取配置文件中的参数

    配置文件格式 如下的配置参数格式都支持: Key = ValueKey = Key:ValueKey :Value 用法 getProperty方法的返回值是String类型. //读取配置文件 Fi ...

  8. java后台读取配置文件中key与value -----demo

    public class ResourcesUtils { /* * @description:根据属性获取文件名 * * @param:propertyName文件的属性名 * * @return: ...

  9. JavaWeb中servlet读取配置文件的方式

    我们在JavaWeb中常常要涉及到一些文件的操作,比如读取配置文件,下载图片等等操作.那我们能不能采用我们以前在Java工程中读取文件的方式呢?废话不多说我们来看看下我们以前在Java工程中读取文件是 ...

随机推荐

  1. Vue2.0 【第二季】第7节 Component 组件 props 属性设置

    目录 Vue2.0 [第二季]第7节 Component 组件 props 属性设置 第7节 Component 组件 props 属性设置 一.定义属性并获取属性值 二.属性中带' - '的处理方式 ...

  2. 扩展el-input 加一个控制精度的命令(directives)

    使用el-input时 出现需要精度控制的需求,因为每一个el-input需要精度不用 所以我给这个虚拟dom绑定了一个精度值,根据这个值去控制精度. 下面附上代码: html: <el-inp ...

  3. 一起了解 .Net Foundation 项目 No.20

    .Net 基金会中包含有很多优秀的项目,今天就和笔者一起了解一下其中的一些优秀作品吧. 中文介绍 中文介绍内容翻译自英文介绍,主要采用意译.如与原文存在出入,请以原文为准. System.Drawin ...

  4. 程序员找工作必备 PHP 基础面试题

    1.优化 MYSQL 数据库的方法 (1) 选取最适用的字段属性,尽可能减少定义字段长度,尽量把字段设置 NOT NULL, 例如’省份,性别’, 最好设置为 ENUM (2) 使用连接(JOIN)来 ...

  5. Natas9 Writeup(命令注入)

    Natas9: 审计源码,发现关键代码: $key = ""; if(array_key_exists("needle", $_REQUEST)) { $key ...

  6. 基于Jquery WeUI的微信开发H5页面控件的经验总结(2)

    在微信开发H5页面的时候,往往借助于WeUI或者Jquery WeUI等基础上进行界面效果的开发,由于本人喜欢在Asp.net的Web界面上使用JQuery,因此比较倾向于使用 jQuery WeUI ...

  7. 分享macOS平台好用的视频分割、合并视频、提取音频、分离音频、音频转码的工具CCVideo

    CCVideo 是一款运行在macOS上可分割视频(可多段分割).合并视频.提取音频.分离音频.音频转码的工具,操作方便,只需简单几步,便可轻松完成. 下载地址

  8. Slam笔记I

    视觉Slam笔记I 第二讲-三位空间刚体运动 点与坐标系: 基础概念: 坐标系:左手系和右手系.右手系更常用.定义坐标系时,会定义世界坐标系,相机坐标系,以及其他关心对象的坐标系.空间中任意一点可由空 ...

  9. UCF Local Programming Contest 2016 J题(二分+bfs)

    题目链接如下: https://nanti.jisuanke.com/t/43321 思路: 显然我们要采用二分的方法来寻找答案,给定一个高度如果能确定在这个高度时是否可以安全到达终点,那我们就可以很 ...

  10. Webpack抽离第三方类库以及common解决方案

    前端构建场景有两种,一种是单页面构建,另一种是多入口构建多页面应用程序(我视野比较小,目前就知道这两种),下面我们针对这两种场景总结了几种抽离第三方类库以及公共文件的解决方案. 如果有哪些地方优化不周 ...