㈠ java中的資源文件(properties)有何作用
配置信息用的。加上你寫一個方法來獲取配置信息的內容,也就是讀取.properties文件。方法設置返回值,可以用來返回等號後面的信息,比如你想獲取8888的話,只需要給寫的方法傳一個參數PORT,就能返回8888。工程里很多地方都會用到配置信息里的東西,如果沒有配置文件,將來要修改埠號或者HOST的時候就比較麻煩,需要改代碼。有配置文件就不一樣了,只修改配置文件里等號後面的數據就可以了。工程里其他地方用HOST和PORT都是用給讀取配置文件的方法傳參數的形式調用數據的,所以只修改配置文件的內容就能全部修改為想要的數據。最主要的是不用修改代碼,這點很重要,所以工作中配置文件往往比java代碼還要多。,當然不止是.properties類型的,更多的是.xml類型
㈡ 如何在java類中讀取Properties配置文件
最常用讀取properties文件的方法 InputStream in = getClass().getResourceAsStream("資源Name");這種方式要求properties文件和當前類在同一文件夾下面。如果在不同的包中,必須使用: InputStream ins = this.getClass().getResourceAsStream(
㈢ 配置文件在java 中怎麼創建
1.一般在scr下面新建一個屬性文件*.properties,如a.properties
然後在Java程序中讀取或操作這個屬性文件。
代碼實例
屬性文件a.properties如下:
name=root
pass=liu
key=value
讀取a.properties屬性列表,與生成屬性文件b.properties。代碼如下:
1 import java.io.BufferedInputStream;
2 import java.io.FileInputStream;
3 import java.io.FileOutputStream;
4 import java.io.InputStream;
5 import java.util.Iterator;
6 import java.util.Properties;
7
8 public class PropertyTest {
9 public static void main(String[] args) {
10 Properties prop = new Properties();
11 try{
12 //讀取屬性文件a.properties
13 InputStream in = new BufferedInputStream (new FileInputStream("a.properties"));
14 prop.load(in); ///載入屬性列表
15 Iterator<String> it=prop.stringPropertyNames().iterator();
16 while(it.hasNext()){
17 String key=it.next();
18 System.out.println(key+":"+prop.getProperty(key));
19 }
20 in.close();
21
22 ///保存屬性到b.properties文件
23 FileOutputStream oFile = new FileOutputStream("b.properties", true);//true表示追加打開
24 prop.setProperty("phone", "10086");
25 prop.store(oFile, "The New properties file");
26 oFile.close();
27 }
28 catch(Exception e){
29 System.out.println(e);
30 }
31 }
32 }
getProperty/setProperty這兩個方法是分別是獲取和設置屬性信息。
Properties類繼承自Hashtable類並且實現了Map介面,也是使用一種鍵值對的形式來保存屬性集。不過Properties有特殊的地方,就是它的鍵和值都是字元串類型。
*.properties文件的注釋用#。
配置數據的時候是以鍵值對的形式,調用的時候和修改的時候也是操作鍵值對。
2.當然還可以用*.xml來配置,位置一般在一個包下面。
例如com.styspace包下面的config.properties文件。
xml version="1.0" encoding="gbk"?>
<Accounts>
<Account type="by0003">
<code>100001</code>
<pass>123</pass>
<name>李四</name>
<money>1000000.00</money>
</Account>
</Accounts>
現在操作config.properties文件。
import org.apache.commons.configuration.Configuration;
import org.apache.commons.configuration.ConfigurationException;
import org.apache.commons.configuration.PropertiesConfiguration;
public class peropertiesLoaderTest {
public static void main(String[] args) throws ConfigurationException{
Configuration config = new PropertiesConfiguration("com/styspace/config.properties");
String name = config.getString("name");
System.out.println("name:" + name);
}
}