logo

Třída vlastností v Javě

The vlastnosti objekt obsahuje pár klíč a hodnota oba jako řetězec. Třída java.util.Properties je podtřídou Hashtable.

Lze jej použít k získání hodnoty vlastnosti na základě klíče vlastnosti. Třída Properties poskytuje metody pro získání dat ze souboru vlastností a uložení dat do souboru vlastností. Navíc jej lze použít k získání vlastností systému.

nahradit z řetězce v Javě

Výhoda souboru vlastností

Rekompilace není vyžadována, pokud se informace změní ze souboru vlastností: Pokud se změní nějaké informace ze souboru vlastností, nemusíte znovu kompilovat třídu Java. Používá se k ukládání informací, které je třeba často měnit.

Konstruktory třídy Vlastnosti

MetodaPopis
Vlastnosti()Vytvoří prázdný seznam vlastností bez výchozích hodnot.
Vlastnosti (výchozí nastavení vlastností)Vytvoří prázdný seznam vlastností se zadanými výchozími hodnotami.

Metody třídy Vlastnosti

Běžně používané metody třídy Vlastnosti jsou uvedeny níže.

MetodaPopis
veřejné neplatné zatížení (Reader r)Načte data z objektu Reader.
veřejné void zatížení (InputStream je)Načte data z objektu InputStream
public void loadFromXML(InputStream in)Používá se k načtení všech vlastností reprezentovaných dokumentem XML na zadaném vstupním proudu do této tabulky vlastností.
veřejný řetězec getProperty (klíč řetězce)Vrací hodnotu na základě klíče.
veřejný řetězec getProperty (klíč řetězce, výchozí hodnota řetězce)Vyhledá vlastnost se zadaným klíčem.
public void setProperty (klíč řetězce, hodnota řetězce)Volá put metodu Hashtable.
veřejný seznam prázdných míst (Vytisknout stream)Používá se k vytištění seznamu vlastností do zadaného výstupního proudu.
veřejný neplatný seznam (VytisknoutWriter out))Používá se k vytištění seznamu vlastností do zadaného výstupního proudu.
public Enumeration propertyNames())Vrátí výčet všech klíčů ze seznamu vlastností.
public Set stringPropertyNames()Vrací sadu klíčů ze seznamu vlastností, kde klíč a jeho odpovídající hodnota jsou řetězce.
veřejný prázdný obchod (Writer w, řetězec komentář)Zapíše vlastnosti do objektu Writer.
veřejný prázdný obchod (OutputStream os, řetězec komentář)Zapíše vlastnosti do objektu OutputStream.
public void storeToXML (OutputStream os, řetězec komentář)Zapisuje vlastnosti do objektu Writer pro generování dokumentu XML.
public void storeToXML(Writer w, řetězec komentář, kódování řetězce)Zapíše vlastnosti do objektu Writer pro generování dokumentu XML se zadaným kódováním.

Příklad třídy Properties pro získání informací ze souboru vlastností

Chcete-li získat informace ze souboru vlastností, nejprve vytvořte soubor vlastností.

db.properties
 user=system password=oracle 

Nyní vytvoříme třídu java pro čtení dat ze souboru vlastností.

Test.java
 import java.util.*; import java.io.*; public class Test { public static void main(String[] args)throws Exception{ FileReader reader=new FileReader('db.properties'); Properties p=new Properties(); p.load(reader); System.out.println(p.getProperty('user')); System.out.println(p.getProperty('password')); } } 
 Output:system oracle 

Pokud nyní změníte hodnotu souboru vlastností, nemusíte znovu kompilovat třídu Java. To znamená, že žádný problém s údržbou.


Příklad třídy Properties pro získání všech vlastností systému

Metodou System.getProperties() můžeme získat všechny vlastnosti systému. Vytvořme třídu, která získá informace ze systémových vlastností.

Test.java
 import java.util.*; import java.io.*; public class Test { public static void main(String[] args)throws Exception{ Properties p=System.getProperties(); Set set=p.entrySet(); Iterator itr=set.iterator(); while(itr.hasNext()){ Map.Entry entry=(Map.Entry)itr.next(); System.out.println(entry.getKey()+' = '+entry.getValue()); } } } 
 Output: java.runtime.name = Java(TM) SE Runtime Environment sun.boot.library.path = C:Program FilesJavajdk1.7.0_01jrein java.vm.version = 21.1-b02 java.vm.vendor = Oracle Corporation java.vendor.url = http://java.oracle.com/ path.separator = ; java.vm.name = Java HotSpot(TM) Client VM file.encoding.pkg = sun.io user.country = US user.script = sun.java.launcher = SUN_STANDARD ........... 

Příklad třídy Vlastnosti k vytvoření souboru vlastností

Nyní napíšeme kód pro vytvoření souboru vlastností.

Test.java
 import java.util.*; import java.io.*; public class Test { public static void main(String[] args)throws Exception{ Properties p=new Properties(); p.setProperty('name','Sonoo Jaiswal'); p.setProperty('email','[email protected]'); p.store(new FileWriter('info.properties'),'Javatpoint Properties Example'); } } 

Podívejme se na vygenerovaný soubor vlastností.

převést str na int
info.vlastnosti
 #Javatpoint Properties Example #Thu Oct 03 22:35:53 IST 2013 [email protected] name=Sonoo Jaiswal