一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術(shù)|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務(wù)器之家 - 編程語言 - Java教程 - Java加載properties文件實現(xiàn)方式詳解

Java加載properties文件實現(xiàn)方式詳解

2020-07-27 13:11黑仔002 Java教程

這篇文章主要介紹了Java加載properties文件實現(xiàn)方式詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下

java加載properties文件的方式主要分為兩大類:一種是通過import java.util.Properties類中的load(InputStream in)方法加載;

另一種是通過import java.util.ResourceBundle類的getBundle(String baseName)方法加載。

注意:一定要區(qū)分路徑格式

實現(xiàn)代碼如下:

?
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
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
package com.util;
 
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;
import java.util.Properties;
import java.util.PropertyResourceBundle;
import java.util.ResourceBundle;
 
public class PropertiesUtil {
  private static String basePath = "src/prop.properties";
  private static String name = "";
  private static String nickname = "";
  private static String password = "";
 
  /**
   * 一、 使用java.util.Properties類的load(InputStream in)方法加載properties文件
   *
   */
  public static String getName1() {
    try {
      Properties prop = new Properties();
      InputStream is = new FileInputStream(basePath);
      prop.load(is);
      name = prop.getProperty("username");
    } catch (FileNotFoundException e) {
      e.printStackTrace();
    } catch (IOException e) {
      e.printStackTrace();
    }
    return name;
  }
 
  /**
   * 二、 使用class變量的getResourceAsStream()方法
   * 注意:getResourceAsStream()讀取路徑是與本類的同一包下
   *
   */
  public static String getName2() {
    Properties prop = new Properties();
    InputStream is = PropertiesUtil.class
        .getResourceAsStream("/com/util/prop.properties");
    try {
      prop.load(is);
      name = prop.getProperty("username");
    } catch (IOException e) {
      e.printStackTrace();
    }
    return name;
  }
 
  /**
   * 三、
   * 使用class.getClassLoader()所得到的java.lang.ClassLoader的getResourceAsStream()方法
   * getResourceAsStream(name)方法的參數(shù)必須是包路徑+文件名+.后綴 否則會報空指針異常
   *
   */
  public static String getName3() {
    Properties prop = new Properties();
    InputStream is = PropertiesUtil.class.getClassLoader()
        .getResourceAsStream("com/util/prop.properties");
    try {
      prop.load(is);
 
    } catch (IOException e) {
      e.printStackTrace();
    }
    return name;
  }
 
  /**
   * 四、 使用java.lang.ClassLoader類的getSystemResourceAsStream()靜態(tài)方法
   * getSystemResourceAsStream()方法的參數(shù)格式也是有固定要求的
   *
   */
  public static String getName4() {
    Properties prop = new Properties();
    InputStream is = ClassLoader
        .getSystemResourceAsStream("com/util/prop.properties");
    try {
      prop.load(is);
      name = prop.getProperty("username");
    } catch (IOException e) {
      e.printStackTrace();
    }
    return name;
  }
 
  /**
   * 五、 使用java.util.ResourceBundle類的getBundle()方法
   * 注意:這個getBundle()方法的參數(shù)只能寫成包路徑+properties文件名,否則將拋異常
   *
   */
  public static String getName5() {
    ResourceBundle rb = ResourceBundle.getBundle("com/util/prop");
    password = rb.getString("password");
    return password;
  }
 
  /**
   * 六、 使用java.util.PropertyResourceBundle類的構(gòu)造函數(shù)
   *
   */
  public static String getName6() {
    try {
      InputStream is = new FileInputStream(basePath);
      ResourceBundle rb = new PropertyResourceBundle(is);
      nickname = rb.getString("nickname");
    } catch (FileNotFoundException e) {
      e.printStackTrace();
    } catch (IOException e) {
      e.printStackTrace();
    }
 
    return nickname;
  }
 
  /**
   * 測試
   *
   */
  public static void main(String[] args) {
    System.out.println("name1:" + PropertiesUtil.getName1());
    System.out.println("name2:" + PropertiesUtil.getName2());
    System.out.println("name3:" + PropertiesUtil.getName3());
    System.out.println("name4:" + PropertiesUtil.getName4());
    System.out.println("password:" + PropertiesUtil.getName5());
    System.out.println("nickname:" + PropertiesUtil.getName6());
  }
}

文件路徑:

Java加載properties文件實現(xiàn)方式詳解

prop.properties文件:

 username=mamama
 nickname=xiaoma
 password=123456

輸出結(jié)果:

Java加載properties文件實現(xiàn)方式詳解

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持服務(wù)器之家。

原文鏈接:https://www.cnblogs.com/heizai002/p/6859121.html

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 97视频久久 | x8x8国产在线观看2021 | 亚洲 在线 日韩 欧美 | 欧美人与日本人xx在线视频 | 精品视频在线免费看 | 99ri在线精品视频在线播放 | 无人在线视频高清免费观看动漫 | 日本一级不卡一二三区免费 | 久久九九亚洲精品 | 69av导航| 欧美香蕉 | 欧美三级小视频 | 久久精品国产色蜜蜜麻豆国语版 | 日本黄色录像视频 | 亚洲剧情在线 | 日本视频二区 | 欧美影院一区二区 | 2018av在线| 成人在线观看一区 | 免费在线观看中文字幕 | 贰佰麻豆剧果冻传媒一二三区 | 日韩在线视频二区 | 亚洲人成网站在线观看90影院 | 久久精品久久久 | 欧美精品一国产成人性影视 | 免费人成在线观看视频播放 | 吃瓜视频在线观看 | 欧美巨吊 | 婷婷在线观看香蕉五月天 | 日韩在线 中文字幕 | 呜呜别塞了啊抽插 | 91yellow吧字幕网zmff7 | 欧洲美女啪啪 | 国产精品欧美亚洲韩国日本 | 男人天堂网站在线 | 日日插插 | 免费一级特黄特色大片∵黄 | 日本成人免费在线视频 | 变态 另类 国产 亚洲 | 91tv在线 | 日本国产高清色www视频在线 |